0
NSTableView의 배열 (데이터 소스)에 액세스하려고합니다. 행에있는 문자열을 새 문자열로 바꿀 수 있습니다. 앱은 NSTextfield로 데이터 항목과 버튼을 추가하여 항목을 추가합니다. NSTableView에 표시됩니다. 내가 원하는 것은 NSTableView는 더블 클릭하고 지금까지 문자열을 새로운 문자열이 무엇을 대체 할 수있을 것입니다,하지만 난 지금까지NSTableView에서 테이블의 행을 편집 할 수 있도록 데이터 소스에 액세스하려면 어떻게해야합니까?
@implementation AppController
-(id)init
{
[super init];
[tableView setDataSource:self];
[tableView setDelegate:self];
array = [[NSMutableArray alloc ] init];
//NSLog(@"this is my delegate %@",[tableView delegate]);
return self;
}
-(IBAction)addItem:(id)sender
{
inputString = [textField stringValue];
[array addObject:inputString];
[tableView reloadData];
return;
}
- (int)numberOfRowsInTableView:(NSTableView *)aTableView
{
return [array count];
}
- (id) tableView:(NSTableView *)aTableView
objectValueForTableColumn:(NSTableColumn *)aTableColumn
row:(int)rowIndex
{
//NSLog(@"this is the object %@",[array objectAtIndex:rowIndex]);
return [array objectAtIndex:rowIndex];
}
-(IBAction) replaceItem:(id)sender
{
NSString *newString = [[NSString alloc]init];
NSLog(@"The selected row %d",[tableView selectedRow]);
newString = [textField stringValue];
[array addObject:newString];
[array replaceObjectAtIndex:[tableView selectedRow ] withObject: newString];
NSLog(@"this is the new sting %@",newString);
[tableView reloadData];
}
@end