UICollectionView Zelle kann nicht ausgewählt werden, nachdem Sie neu laden im Falle dass, wenn Zelle berührt wurde beim zurückladen

Benutze ich UICollectionView anzeigen-server-bezogenen Informationen. Diese UICollectionView erlaubt den Zellen Auswahl an einige geschachtelte Daten. Leider, wenn Benutzer berührt und hält alle Zellen während meine app Aufrufe [collectionView reloadData] diese Zelle reagiert nicht mehr auf Berührungen mehr (collectionView:didSelectItemAtIndexPath: Methode ist nicht genannt).
Kann ich wählen Sie alle Zellen außer dieser.

Erstellte ich einfache Anwendung, die dieses problem reproduzieren können: link

Irgendwelche Ideen wie man es beheben?

  • +1 für den schönen test-code. Ich überschrieb touchesBegan und touchesEnded in die benutzerdefinierte Zelle, und es erhält immer noch berührt, obwohl didSelectRowAtIndexPath aufgerufen ist nicht mehr. Es ist superview ist immer noch der Ansicht Sammlung und der Rahmen ist immer noch das gleiche. Bisher sehe ich keine Grund für dieses Verhalten.
  • Ich bemerkte eine andere Sache. Wenn Sie geben den Zellen einen farbigen selectedBackgroundView, die Zelle, die Sie gedrückt, während Sie den laden nie angezeigt wird, gehen Sie zurück zu den anderen Staat -- allerdings, wenn Sie sich den ausgewählten Zustand, es zeigt es als nicht ausgewählt. Ich habe sogar versucht, explizit eine Einstellung NICHT in eine überschreibung der prepareForReuse, aber das machte keinen Unterschied. Weiter unten.
  • Interessanterweise, obwohl, wenn, nachdem Sie eine dieser nicht-wählbar-Zellen, wenn Sie wählen Sie eine der anderen "normalen" Zellen ist, wird es entsprechend zeigen die ausgewählten hintergrund anzeigen, und beim berühren der nicht-seelctable Zelle, die "normal" - Zelle geht zurück zu den anderen Staat. So, es scheint, dass die Auflistung anzeigen ist informiert, der touch auf den nicht auswählbaren Zelle, aber nicht den Aufruf der didSelectItem Methode. Neugierig.
  • Ich habe auch versucht die Einreichung der ausgewählten und markierten Staaten in prepareForReuse mit kein Glück. KEINE AHNUNG, warum wir nicht immer didSelectItem =[
InformationsquelleAutor Vitaly S. | 2014-05-29
Schreibe einen Kommentar