2012-02-22 2 views
0

대리자 메서드에 문제가 있습니다. 배열이 tableView에 채워지는 위치 중 하나는 발사가 아니며 이유가 표시되지 않습니다. 결과로 내 tableView에 예상 줄 수가 있지만 모두 비어 있습니다. 중단 점을 설정했으나 중단되지 않았습니다.NSTableView 데이터 소스 메서드가 실행되지 않습니다.

내가 시도 할 수있는 단서가 있습니까?

//This is working 

- (id)init { 
    self = [super init]; 

    cmdListMain = [NSArray arrayWithObjects: @"Cat", @"Dog", @"Fish", nil]; 

    NSLog (@"init"); 


    return self; 
} 

//This is working 

- (int) numberOfRowsInTableView: (NSTableView *) tv 
{ 
    NSLog(@"numberOfRowsInTableView"); 
return [cmdListMain count]; 
} 

//This one is not firing** 

- (id)cmdTableView:(NSTableView *)tv 
    objectValueForTableColumn :(NSTableColumn *)cmdTableView 
      row :(int)rowIndex 
{ 
    NSLog(@"cmdTableView"); 
    NSString *v = [cmdListMain objectAtIndex:rowIndex]; 
    return v; 
} 

//This is working 

-(BOOL)applicationShouldTerminateAfterLastWindowClosed:(NSApplication *) theApp { 
    return YES; 
} 
+1

안녕하세요 로널드을, 당신은 당신이 사용중인 프로그래밍 언어와 같은 몇 가지 중요한 세부 사항을, 왼쪽으로. 또한 예제 코드를 생략했습니다. 일반적으로 스택 오버플로 문제에 대한 도움을 요청하면 코드를 가능한 한 줄여 문제를 계속 보여줄 수 있습니다. 그런 다음 여기에 그 중 일부를 게시하십시오. – s4y

답변

4

이 데이터 원본의 위임자가 아닌 사용자 (철회 아님) 방법이 잘못되었습니다. 이 변경이에

- (id)cmdTableView:(NSTableView *)tv 
objectValueForTableColumn :(NSTableColumn *)cmdTableView 
     row :(int)rowIndex 

:

- (id)tableView:(NSTableView *)tv 
objectValueForTableColumn :(NSTableColumn *)column 
     row :(int)rowIndex 
+0

원더풀입니다. –

관련 문제