Start UICollectionView unten
In iOS 7, erhält eine UICollectionView, wie fangen Sie es an der Unterseite? Denken Sie über die iOS-Nachrichten-app, wo, wenn der Blick wird sichtbar, es beginnt immer am Ende (Letzte Nachricht).
Du musst angemeldet sein, um einen Kommentar abzugeben.
Das problem ist, dass, wenn Sie versuchen, die contentOffset Ihrer Sammlung anzeigen in viewWillAppear, der Ansicht Sammlung noch nicht gerendert., seine Elemente noch. Daher selbst.collectionView.contentSize ist noch {0,0}. Die Lösung ist eine Frage der Ansicht Sammlung das layout für die Größe des Inhalts.
Darüber hinaus werden Sie wollen, stellen Sie sicher, dass Sie nur setzen Sie den contentOffset, wenn die contentSize ist größer als die Grenzen Ihrer Sammlung anzeigen.
Einer vollständigen Lösung sieht wie folgt aus:
@awolf
Ihre Lösung ist gut!
Aber nicht gut tun, mit autolayout.
Sollten Sie rufen [self.Ansicht layoutIfNeeded] erste!
Die vollständige Lösung ist:
Dies funktioniert für mich, und ich denke, es ist eine moderne Art und Weise.
Aber denken Sie daran, dies nur tun, wenn Ihr
contentSize.height
>bounds.size.height
.Vorausgesetzt, dass Sie wissen, wie viele Elemente in Ihre Sammlung Ansicht, die Sie verwenden können,
scrollToItemAtIndexPath:atScrollPosition:animated:
Apple-Docs
es funktioniert perfekt für mich (autolayout)
Hinzugefügt
scrollToItemAtIndexPath:atScrollPosition:animated:
imviewWillLayoutSubviews
so, dass die collectionView geladen wird, sofort an der Unterseite