Que signifie UICollectionView _createPreparedCellForItemAtIndexpath:withLayoutAttributes:applyAttributes:?

Échec d'Assertion dans -[UICollectionView _createPreparedCellForItemAtIndexpath:withLayoutAttributes:applyAttributes:]

J'ai eu cette erreur depuis IOS 7. Il fonctionne très bien sous IOS 6.

J'ai chercher partout sur le web et j'ai trouvé ceci:

http://forums.xamarin.com/discussion/8233/ios-7-crash-in-collectionview

Toutefois, la solution ne fait pas de sens

J'ai tout compris. J'avais utilisé de manière incorrecte
CollectionView.RegisterClassForCell. Apparemment, je devais utiliser
CollectionView.RegisterNibForCell lors de la configuration du viewcontroller.
Qui a résolu le problème. iOS 6 doit avoir été plus indulgent.

Pourrait l'un de vous me donner un indice sur ce bug

Symptomps:

  1. Crash
  2. Échec d'Assertion dans -[UICollectionView _createPreparedCellForItemAtIndexpath:withLayoutAttributes:applyAttributes:]
  3. Travaille dans IOS6 et pas IOS 7

Le code je me méfie est: est-ce

- (CGSize)collectionView:(UICollectionView *)collectionView
                  layout:(UICollectionViewLayout*)collectionViewLayout
  sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
    CGSize sz = [BGCollectionViewCellImage defaultSize];
    return sz;
}

Mais il semble être trop ordinaire.

sz est tout simplement CGSize de 100*120

Un autre est ceci:

- (BGCollectionViewCellImage *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
    BGCollectionViewCellImage * cell = [[BGCollectionViewCellImage alloc]init];
    Image * img= self.arImages[indexPath.row];
    [cell setImg:img andIndex:indexPath.row+1];

    return cell;
}

Peut-être que je devrais utiliser la file d'attente à quelque chose comme dans UITableViewCell

J'ai reçu un autre indice. Si j'ai essayé de retirer certaines des cellules, j'ai obtenu ceci:

2013-10-14 21:18:34.346 domainname[24667:a0b] * fin de l'app en raison de uncaught exception 'NSInternalInconsistencyException', la raison: "ne pourrait pas retirer une vue de type: UICollectionElementKindCell avec identifiant BGCollectionViewCellImage - doit s'inscrire une plume ou une classe pour l'identifiant, ou de connecter un prototype de cellule dans un storyboard'
*
Premier lancer de pile d'appel:
(

Semble que j'ai eu à enregistrer quelque chose d'abord.

OriginalL'auteur user4951 | 2013-10-14