그래서 완벽한 해결책을 찾았습니다.
먼저 인터페이스 빌더로 이동하십시오. 정렬 할 열을 선택하십시오. 열의 속성으로 이동하여 첫 번째 버튼을 선택하여 '표의 열 속성'을 확인하십시오. 설정 적절한 값 (문자 그대로, 아니 '또는'나 @가 필요하다) :
Sort key: file
'. 파일'내용이 열에 표시됩니다 사전의 키는
Selector: compare:
표준 분류 기능을 . 이제
, 여기에 모든 변경 사항을 저장하고, NSTableView는에 표시된 데이터의 소스는 이미 당신이 두 가지 방법을 필요로하는 모델을 알아야되는 클래스, 엑스 코드로 이동 :.
-(NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
-(id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn
*)tableColumn row:(NSInteger)row
이 두 가지는 NSTableDataSource 비공식 프로토콜을 준수하는 데 필요합니다. 당신은 MacDev 센터에서 그것에 대해 읽을 수 있습니다.
이
-(void)tableView:(NSTableView *)tableView sortDescriptorsDidChange: (NSArray *)oldDescriptors
는 일을 할 것입니다 매우 간단한 코드를 포함 할 수 있습니다 :
-(void)tableView:(NSTableView *)tableView sortDescriptorsDidChange: (NSArray *)oldDescriptors
{
NSArray *newDescriptors = [tableView sortDescriptors];
[results sortUsingDescriptors:newDescriptors];
//"results" is my NSMutableArray which is set to be the data source for the NSTableView object.
[tableView reloadData];
}
을 그리고 그게 다야
지금 당신이해야 할 새로운 방법을 추가하는 것입니다. 그것은 내 애플 리케이션에서 일하고있어, 그것이 당신의 경우에 효과가 있기를 바랍니다 : 모든 것이 자동으로 작동해야합니다. 방금 모든 파일을 저장하고 응용 프로그램을 작성했습니다. 그리고 효과가있었습니다.:) 나에게 도움이
사이트 : 답장을 이 CocoaDev: SortingNSTableView
당신은 나의 하루를 구했습니다! – 11684
당신을 진심으로 환영합니다! –
Awsumly 나를 화나게하는 것에서 구해 줬다. .. :) –