1

次のコアデータ設定があります。

データ設定

特定の medleyid を持つ SongsInMedleys のコンテンツを含むように構成された「 SongsInMedleys 」という配列コントローラーを作成しました。

SongsInMedleys 配列コントローラーにバインドされるビュー ベースの Tableview を作成しました。

それは正常に機能しており、Table Cell View にバインドし、Model Key Path で objectValue.withSongs.title を使用することで、曲のタイトルをラベルに設定することができました。

今私の問題に:

関連する曲のすべての節を含むコレクション ビューをテーブル セル ビュー内に作成したいと考えています。( objectValue.withSongs.withVerses)

どうすればそれができるかについての提案はありますか???

私が作成しようとしているもののモデル: モデル

4

1 に答える 1

0

いくつかの調査の後、テーブルビュー内にコレクションビューを追加してみることをあきらめました。Insted のサブクラスに自分の詩を手動で追加しましたNSTableCellView

-(void) setObjectValue:(id)objectValue {

    if (objectValue != nil)
    {
    [super setObjectValue:objectValue];

    SongsInMedleys *Sim = objectValue;
    Songs *song = Sim.withSongs;

    scrollView *scrollview = [[scrollView alloc] initWithFrame:NSMakeRect(10,5,[self frame].size.width-30,145)];

    int addverses = 0;

    for (VersesInSongs *verse in song.withVerses)
    {
        if ([verse.lyric length] > 0) {
            addverses += 1;
        }

    }

    NSView *view = [[NSView alloc] initWithFrame:NSMakeRect(5, 10, ((addverses * (169+5))+5), 140)];


    int x = 5;

    NSSet *Verses = song.withVerses;
    NSSortDescriptor *sortVerses = [[NSSortDescriptor alloc] initWithKey:@"number" ascending:YES];
    NSArray *sortedVerses = [Verses sortedArrayUsingDescriptors:[NSArray arrayWithObject:sortVerses]];

    for (VersesInSongs *verse in sortedVerses)
    {
         if ([verse.lyric length] > 0) {
             verseBox *box = [[verseBox alloc] initWithFrame:NSMakeRect(x, 10, 169, 130)];

             [box setSong:song];
             [box setVerse:verse];
             [view addSubview:box];

             x = x + 169+5;
         }

    }
    [scrollview setDocumentView:view];
    [self addSubview:scrollview];
    }
}
于 2013-08-19T22:56:54.020 に答える