0

私はこの2つのデリゲートを持っています:

#pragma mark = UICollectionViewDataSource

- (NSInteger)collectionView:(UICollectionView*)collectionView numberOfItemsInSection:(NSInteger)section
{
    NSLog(@"COUNT IS %d", [[AHImageDataSource sharedDataSource] count]);
    return [[AHImageDataSource sharedDataSource] count];
}

- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView*)collectionView
{
    return 1;
}

numberOfItemsInSection は 12 を返しましたが、cellForItem は呼び出されません。numberOfItemsInSection をハードコードすると、実際に呼び出されます。この奇妙な問題が発生している理由について何か考えはありますか?

この問題を示すサンプル プロジェクトを次に示します。

4

3 に答える 3

2

[[AHImageDataSource sharedDataSource] count]が戻ってきた場合nilcellForItemAtIndexPath呼び出されません。ですから、それ[[AHImageDataSource sharedDataSource] count]が何らかの価値を持っていることを確認してください。

サンプルプロジェクトをダウンロードできないので、あまり役に立ちません。:(

于 2012-12-25T12:03:34.730 に答える
0

デリゲートを設定しましたか?..

メソッド名が正しいこと、または何か不足していることを確認してください。

于 2012-10-31T07:09:37.843 に答える
0

ファイル PintCollectionViewLayout.m は、ターゲットのビルド フェーズでコンパイル ソースに含まれていませんでした。それを追加して、問題を解決しました。

于 2013-02-07T01:31:02.320 に答える