發生了什麼事UICollectionView的細胞消失
目前,我有使用兩個UICollectionViews
一個UITableView
中的應用程序。這樣我創建了一個類似於應用程序的Pulse News外觀。我的問題是,有時第6行和第11行完全消失,留下應該是單元格的空白空間。如果所有的單元格都是這樣的(這樣我就可以認爲我沒有正確地做事),但我不會介意,但事情是,正好發生在那些特定的單元格上。
我的理論
第6和第11行是那些當我開始滾動所以在默認情況下,我能看到5個細胞出現,當我做的第一水平滾動第六屆上來(有時候是空白)。
我有什麼
我目前做的唯一事情是這樣的:
[self.collectionView registerNib:[UINib nibWithNibName:CELL_NIB_NAME bundle:nil] forCellWithReuseIdentifier:CELL_IDENTIFIER];
在viewDidLoad
。而在創作細胞:
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
MyCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:CELL_IDENTIFIER forIndexPath:indexPath];
NSMutableDictionary *dictionary = [self.DataSource objectAtIndex:[indexPath row]];
[cell buildViewWithDictionary:dictionary withReferenceParent:self.referenceViewController];
return cell;
}
所以我低估沒有什麼特別的事情在這裏。我雖然在數據源(一個虛擬的JSON文件)上出現了問題,但有時它工作正常,單元格顯示,所以我認爲從該部分可以確定。
所以我的「問題」:有誰知道發生了什麼事?我真的不想說這是來自iOS的一個bug,但我想不出別的。
編輯1.0
驚人的一部分,該方法
-(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath;
是不計算[0打算從indexPath
[0,4]到[0,6], 5]。我第一次在iOS中看到這種情況。
編輯2.0
我轉,我創建了細胞的方式,而不是離隊我現在用的是老辦法:
NSArray *nib = [[NSBundle mainBundle] loadNibNamed:CELL_NIB_NAME owner:self options:nil];
MyCell *cell = (MyCell *)[nib objectAtIndex:0];
還是同樣傷心的結果。
我得到同樣的問題,但消失的單元最終呈現在以前的單元格下面!很奇怪。我認爲這是iOS中的一個錯誤。 –
奇怪的事情正在發生。 = /但仍然是一個優秀的控制器.. – Peres
我有使用集合視圖創建的經典網格視圖。我有3個細胞連續,有小間隙。同樣的事情發生在這裏,但似乎非常隨機。不時有一個細胞被放置在連續的第四個地方,並且在預期的地方沒有任何東西。 –