Comment recharger uniquement les données de la section de UICollectionView?
Je suis en train de recharger uniquement les données de la section, pas d'en-tête ou le pied de page (complémentaire), de UICollectionView.
Lorsque j'utilise reloadData
méthode, en-tête et pied de page de la section également recharge, c'est ce que je veux.
J'ai trouvé la méthode reloadSections:
, mais je ne sais pas pourquoi ça ne fonctionne pas.
Parce que ma vue de collection ne contient qu'un seul article, donc j'ai essayé d'utiliser la méthode comme ceci:
[collectionViewController.collectionView reloadSections:[NSIndexSet indexSetWithIndex:0]];
Mais il fait erreur d'exécution lorsque la méthode est appelée. Le contenu de l'erreur est:
'NSInvalidArgumentException', reason: '-[UICollectionViewUpdateItem action]:
unrecognized selector sent to instance 0x90aec00'
Est la méthode reloadSections:
n'est pas autorisé à l'utiliser comme ça? Est-il un autre moyen pour recharger uniquement les données de la section, pas d'en-tête ou le pied de page de la section?
J'ai fait une vue de la racine de contrôleur et de l'ensemble de la UICollectionViewController objet, dont le nom est collectionViewController, en tant que propriété de la racine-vue-contrôleur.
J'ai vérifié que la vue de la table de reloadSections:withRowAnimation: méthode fonctionne très bien. Existe-il des méthodes pour mettre en œuvre ou des environnements de configurer avant d'utiliser la collecte de vue reloadSections méthode?
Je pense que ce problème est lié avec cette SORTE d'article parce que je ne peux pas trouver le même problème lorsque le clavier est en panne. Mais l'utilisation de cette correctif ne fonctionne pas pour moi... (mais j'ai reçu un message d'erreur différent... "*** fin de l'app en raison de uncaught exception 'NSInvalidArgumentException', la raison: '*** setObjectForKey: objet ne peut pas être nul (clé: <_UICollectionViewItemKey: 0x8c84090> Type = SV Type = UICollectionElementKindSectionHeader IndexPath = <NSIndexPath 0x8c7ffb0> 2 index [0, 0])'")
OriginalL'auteur glast | 2013-01-26
Vous devez vous connecter pour publier un commentaire.
Je pense que l'erreur se produit uniquement lorsque la barre de recherche est en vue d'une collection de sous-vue, et en essayant d'appeler
reloadSections:
lorsque le clavier est en place.Cet article donne une réponse à un problème similaire, mais qui n'a pas fonctionné pour moi.
J'ai donc utilisé une autre manière avec laquelle je peux invoquer presque la même fonction.
Au lieu de l'ajout de l'en-tête comme une complémentaire de vue, j'ai fait l'en-tête d'une sous-vue de 'voir'. (pas collectionView)
Et ajouté un peu de défilement délégué pour imiter la vue de la table d'en-tête.
OriginalL'auteur glast