2012-10-31 103 views
0

我有這個兩名代表:- (UICollectionViewCell *)的CollectionView:(UICollectionView *)的CollectionView cellForItemAtIndexPath不叫

#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時,它實際上正在調用。任何想法爲什麼這個奇怪的問題是hapening?

這裏有一個sample project演示該問題

+0

無法運行示例項目。它顯示一個空白屏幕總是,有什麼缺失的? – iDev

+0

nope ..它應該顯示一個空白屏幕..但你應該把一個斷點在cellForItem,看到它不會被調用 – adit

+0

好吧,知道了,numberOfItemsInSection中的硬編碼是什麼?我嘗試了設置15,但它仍然沒有打電話 – iDev

回答

0

你設置委託?..

確保該方法名是正確的,或者你失去了一些東西..

+0

是的..我做了,你可以檢查示例項目,如果你想 – adit

+0

而作爲你可以看到我什麼時候很難代碼它的工作號 – adit

+1

cellForItem方法不呼籲任何值.. – Sandeep

2

如果[[AHImageDataSource sharedDataSource] count]正在恢復nilcellForItemAtIndexPath不會被調用。所以請確保[[AHImageDataSource sharedDataSource] count]有一定的價值。

我無法下載您的示例項目,所以幫不上忙。 :(

0

文件PintCollectionViewLayout.m不包括在編譯源目標的構建階段。補充一點,解決了這個問題對我來說。

+0

是這個檢查出來。只要您將PintCollectionViewLayout.m添加到編譯源,一切都會正常工作。如果你運行應用程序,它會在Interface Builder文件中記錄「Unknown class PintCollectionViewLayout」。當你將文件添加到編譯源時,這會消失 – Larry

相關問題