Hi,
ich möchte eine TableView dynamisch mit Einträgen füllen. Dazu habe ich eine DataSource mit einem NSMutableArray definiert. Aber irgendwie ist dieses NSMutableArray immer (null) wenn ich es mir zum Test mit NSLog ausgeben lasse. Irgendwas habe ich in meiner Klasse wohl vergessen - nur was?
Hier mal mein Quellcode:
Results.h
------------------------------------------------------------------------------------
#import
@interface Results : NSObject {
IBOutlet NSTableView *tableView;
NSMutableArray *paths;
}
@property (retain) NSMutableArray *paths;
+ (id)results;
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView;
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row;
- (void)addPath:(NSString *)path;
@end
Results.m
------------------------------------------------------------------------------------
#import "Results.h"
@implementation Results
@synthesize paths;
+ (id)results {
return [[[Results alloc] init] autorelease];
}
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView {
return [paths count];
}
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
return @"foo";
}
- (void)addPath:(NSString *)path {
[paths addObject:path];
NSLog(@"%@", paths);
[tableView noteNumberOfRowsChanged];
[tableView reloadData];
}
@end
Kann mir jemand sagen, wo das Problem liegt. Ich habe nun schon den ganzen Tag Bücher gewälzt und in der Dokumentation und im Internet gelesen, aber irgendwie finde ich den Fehler nicht. Bin schon ganz durcheinander im Kopf ... :(
Dirk
ich möchte eine TableView dynamisch mit Einträgen füllen. Dazu habe ich eine DataSource mit einem NSMutableArray definiert. Aber irgendwie ist dieses NSMutableArray immer (null) wenn ich es mir zum Test mit NSLog ausgeben lasse. Irgendwas habe ich in meiner Klasse wohl vergessen - nur was?
Hier mal mein Quellcode:
Results.h
------------------------------------------------------------------------------------
#import
@interface Results : NSObject {
IBOutlet NSTableView *tableView;
NSMutableArray *paths;
}
@property (retain) NSMutableArray *paths;
+ (id)results;
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView;
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row;
- (void)addPath:(NSString *)path;
@end
Results.m
------------------------------------------------------------------------------------
#import "Results.h"
@implementation Results
@synthesize paths;
+ (id)results {
return [[[Results alloc] init] autorelease];
}
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView {
return [paths count];
}
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
return @"foo";
}
- (void)addPath:(NSString *)path {
[paths addObject:path];
NSLog(@"%@", paths);
[tableView noteNumberOfRowsChanged];
[tableView reloadData];
}
@end
Kann mir jemand sagen, wo das Problem liegt. Ich habe nun schon den ganzen Tag Bücher gewälzt und in der Dokumentation und im Internet gelesen, aber irgendwie finde ich den Fehler nicht. Bin schon ganz durcheinander im Kopf ... :(
Dirk
