1

ネストされたコレクション ビューを作成しようとしています。最初に私は1つのレベルのためにやった.

String を使用してデータ モデル クラスを作成しましたheader。アプリデリゲートで配列を作成しましたsectionTitle。ペン先に、コレクションビューとアレイコントローラーを追加し、このガイドに従ってすべてのバインディングを行いました。次に、awakeFromNibランダムなデータを入力しました

- (void)awakeFromNib {
    int idx = 0;
    NSMutableArray *sectionTitle = [[NSMutableArray alloc] init];
    while (idx < 1) {
        HeaderModel *header = [[HeaderModel alloc] init];
        [header setHeader:[NSString stringWithFormat:@"Section %d", idx]];
        [sectionTitle addObject:header];
        idx++;
    }
    [self setHeaderData:sectionTitle];
}

それを実行すると、4 つのセクションが表示されます。これと同様のレイアウトを実現したい。セクション タイトル、その下に別の項目のコレクション。そこに与えられた答えは、ネストされたコレクションビューを使用することを示唆しているだけです。

そこで、最初のビュー プロトタイプに別のコレクション ビューを追加しました。次に、最初のビューで行ったのと同じアプローチに従いました(データモデルと配列が異なります)。

- (void)awakeFromNib {
    int idx = 0;
    NSMutableArray *sectionTitle = [[NSMutableArray alloc] init];
    NSMutableArray *groupData = [[NSMutableArray alloc] init];
    while (idx < 1) {
        HeaderModel *header = [[HeaderModel alloc] init];
        DataModel *name = [[DataModel alloc] init];
        [header setHeader:[NSString stringWithFormat:@"Section %d", idx]];
        [name setName:[NSString stringWithFormat:@"Name %d", idx]];
        [sectionTitle addObject:header];
        [groupData addObject:name];
        idx++;
    }
    [self setHeaderData:sectionTitle];
    [self setData:groupData]; //NSCollectionView item prototype must not be nil.
}

しかし、NSCollectionView アイテム プロトタイプは nil であってはならないというエラーが表示されます。 これを解決するにはどうすればよいですか?

4

1 に答える 1