Ich habe nach Möglichkeiten gesucht, ein UICollectionView
für eine iOS-App einzurichten. Google zeigt nur ein paar Blogs mit Posts über was es ist, nicht wie es funktioniert. Dann gibt es natürlich die Apple-Dokumentation, die hilfreich ist, aber nicht so viele Informationen bereitstellt, wie ich ein UICollectionView
einrichten könnte.
Wie kann man UICollectionView
einrichten?
Die uicollectionview Klasse ist fast identisch mit der uitableview gekennzeichnet sind. Klasse. Sie teilen viele der gleichen Methoden und Funktionen. Und wenn die Methoden / Funktionen unterschiedlich sind, ist es meistens nur eine Frage des Austauschens von "Zeile" für "Zelle" und umgekehrt. Allerdings gibt es ein paar Methoden, die nicht in UICollectionView existieren, die auf UITableView funktionieren. Zuerst werde ich erklären, wie man eine UICollectionView einrichtet:
Wenn Sie die Ansicht und nicht den ViewController verwenden, stellen Sie sicher, dass die Delegierte und DataSource der CollectionView der Ansichtscontroller ist, auf dem sie sich befindet. Stellen Sie außerdem sicher, dass Sie die Delegate- und DataSource-Datei zu Ihrer Header-Datei hinzufügen: <UICollectionViewDataSource, UICollectionViewDelegate>
Stellen Sie als Nächstes sicher, dass Sie diese drei Methoden in die Klasse Ihres View-Controllers einschließen:
%Vor% Dies sind die einzigen erforderlichen Methoden. Die erste teilt der Sammlungsansicht die Anzahl der Abschnitte mit, die sie haben sollte. Dies sollte einen ganzzahligen Wert zurückgeben. Die zweite Methode erhält die Anzahl der Zellen in jedem Abschnitt. Auch dies sollte einen ganzzahligen Wert zurückgeben. Die letzte Methode füllt jede Zelle mit den angegebenen Daten (normalerweise von einem NSArray). Diese letzte Methode sollte eine CollectionViewCell zurückgeben. Wenn Sie für diese Methode Haltepunkte festlegen, stellen Sie fest, dass sie einmal für jede Zelle aufgerufen werden, die in der Methode numberOfItemsInSection
definiert ist.
UICollectionViews bieten erweiterte Animationsmethoden und ermöglichen die Auswahl und Auswahl von Zellen (ähnlich wie Apps im Bearbeitungsmodus). Nach meinem Wissen bieten UICollectionViews jedoch keine Features wie "Swipe to delete" oder eine Art Offenbarungsindikator.
Mit UICollectionViews können Sie auch benutzerdefinierte Zellen erstellen, indem Sie xib (AKA < a href="/ questions / tagged / nib" class="post-tag" title="Zeige Fragen markiert 'nib'"> nib ) Dateien, dies ermöglicht einige sehr fortschrittlich und einzigartige Schnittstellen ohne viele von komplizierten Code.
Leider wird UICollectionView nur in iOS 6 und höher unterstützt. Es gibt ein paar Projekte wie PSTCollectionView , die Unterstützung für CollectionViews in iOS 4.3 + hinzufügen, aber ich habe nicht herausgefunden, wie das geht benutze sie. In meinem Fall, wenn die Ansicht geladen wird, überprüfe ich einfach, ob die UICollectionView-Klasse verfügbar ist, und wenn dies nicht der Fall ist, lade ich stattdessen eine Tabelle.
Hier finden Sie einen Link zu Apples offizieller Dokumentation zu Collection Views . Vielleicht möchten Sie auch dieses Tutorial lesen.
Ich habe ein schrittweises Tutorial erstellt, um UICollectionViews mit benutzerdefinierten Layouts einzurichten. Hoffentlich hilft es einigen Leuten, sich mit der API vertraut zu machen.
Tags und Links objective-c ios uicollectionview