Mam aplikację IOS, która używa UICollectionView do wyświetlania poziomej siatki komórek. Wszystko, czego potrzebuję, to sprytny sposób (leniwego) ładowania danych, gdy użytkownik dojdzie do końca mojego UICollectionView. Kod używam teraz:Leniwa technika ładowania dla UICollectionView
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
GridCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:Cell forIndexPath:indexPath];
/**
TODO
- Find a good way to check if the user has reach the end of the grid
- This next piece of code is for demonstration purposes. A real check has to be
done yet!!!
**/
// releases is my datasource //
if(indexPath.row == (releases.count - 1)) {
[self getNextListData];
}
return cell; // <-- finally return the cell
}
Problem z tym kodem jest: Jeżeli użytkownik przewija się bardzo szybko do końca, ma on do przewijania w przód iw tył, aby załadować więcej rzeczy. To naprawdę nie jest przyjazne dla użytkownika i potrzebuję lepszego sposobu na załadowanie przedmiotów w razie potrzeby.
Czy ktoś ma jakieś sugestie?
Z góry dziękuję.
Zakładam, że nie znasz liczby na liście, czy tak jest w tym przypadku? – gaige