사용자 정의 NSTableCellView
에 약간 문제가 있습니다.테이블 데이터로드시 사용자 정의 테이블 셀 뷰가 수정되지 않습니다
문제 : : 배열에서 데이터를로드하기 위해 모든 항목이 구성되어있는 테이블보기가 Nib에 있습니다. 지금은 괜찮습니다. 문제는 응용 프로그램에서 ((id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
메서드를 사용하여) 뷰를 준비하는 동안 반환 된 뷰는 원하는대로 수정되지만 반환 할 수있는 뷰는 모두 볼 수 있지만 수정되지 않습니다. .
문제를 찾는데 도움이 될 것으로 기대합니다. 내 문제를 이해하는 데 도움이되는 몇 가지 물건을드립니다.
일부 이미지 당신이 볼 수있는
휴대 전에, 반환받을보기도 수정됩니다. 테이블 뷰에 표시
셀,이 경우, 사용자 정의보기가 수정되지 않습니다, 그것은 아무것도
코드를 내가 수정되지 않은 좋아하는 모양이다
내 맞춤 NSTableCellView
헤더 ... 테이블에 대한 뷰를 생성하기위한
@interface playlistQueueItemView : NSTableCellView
@property (weak) IBOutlet NSButton *button;
@property (strong) IBOutlet NSTextField *title;
@property (strong) IBOutlet NSTextField *artist;
- (void)setAllFromInitWithTitle:(NSString*)title artist:(NSString*)artist;
@end
방법 :
- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row {
playlistQueueItemView *cell = [tableView makeViewWithIdentifier:tableColumn.identifier owner:self];
NSDictionary* song = [[PlaylistQueue getQueue] getSongWithPos:(int) row];
cell.artist.stringValue = song[@"artista"];
cell.title.stringValue = song[@"titulo"];
return cell;
}
한가지 더, 나는 TableViewPlayground라는 비트 애플의 샘플 프로젝트 중 하나를 따랐다.
감사합니다 : D
감사 : D. 나는이 두 가지 방법의 차이점을 몰랐다. 이제 효과가있다. – melchor629