現在、いくつかの配列があり、それぞれに番組のタイトル、説明、期間が含まれています。私はそれらをさらに'shows'配列に入れており、この配列を使用してにデータを入力していNSTableView
ます。私がやりたいのは、テーブルの最初の列の各配列からショーのタイトルを抽出し、2番目の列の説明を抽出することです。
私が現在持っているコードは、配列の配列の最初の配列を取り、列1、2番目の列の2番目の配列などにデータを入力します。テーブルを正しく入力するには、これまでのコードをどのように修正しますか?indexOfObject
代わりに使用しようとしましたがobjectAtIndex
、スローと例外が発生します。これが私の(簡略化された)コードです:
AppDelegate.m
- (void)applicationDidFinishLoading:(NSNotification *)aNotification
{
NSArray *show1 = [[NSArray alloc] initWithObjects:@"Title", @"A description", nil];
NSArray *show2...
NSArray *show3...
NSArray *show4...
self.array = [[NSMutableArray alloc] initWithObjects: show1, show2, show3, show4, nil];
[self.tableView reloadData];
}
- (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView
{
return [self.array count];
}
- (NSView *)tableView:(NSTableView *)tableView viewForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row
{
NSString *identifier = [tableColumn identifier];
if([identifier isEqualToString:@"title"]) {
NSTableCellView *title = [tableView makeViewWithIdentifier:@"title" owner:self];
title.textField.stringValue = [self.array objectAtIndex:0];
return title;
} else if {...}
return nil;
}