Estoy buscando una guía o tutorial que me muestre cómo configurar un UICollectionView simple usando solo código.
Estoy leyendo la documentación en el sitio de Apple , y también estoy usando el manual de referencia .
Pero realmente me beneficiaría de una guía simple que me puede mostrar cómo configurar un UICollectionView sin tener que usar Storyboards o archivos XIB / NIB, pero desafortunadamente cuando busco, todo lo que puedo encontrar son tutoriales que cuentan con Storyboard.
ios
objective-c
cocoa-touch
uicollectionview
Jimmery
fuente
fuente
Initializing a Collection View
, ¿estás usando inicializador desde allí?Respuestas:
Archivo de cabecera:--
Archivo de implementación: -
Salida---
fuente
@property (strong, nonatomic) UICollectionView *collectionView;
UICollectionViewCell
, realmente no desea registrarseUICollectionViewCell
, sino que desea subclasificarlo, configurar su celda en elinitWithFrame
método y luego registrar esta subclase con el identificador de celda , noUICollectionViewCell
._collectionView=[[UICollectionView alloc] initWithFrame:self.view.frame collectionViewLayout:layout];
Para el usuario swift4: -
fuente
Para Swift 2.0
En lugar de implementar los métodos necesarios para dibujar
CollectionViewCells
:Utilizar
UICollectionViewFlowLayout
Luego implemente los
UICollectionViewDataSource
métodos según sea necesario:fuente
Swift 3
fuente
A partir de la respuesta de @ Warewolf, el siguiente paso es crear su propia celda personalizada.
Ve a
File -> New -> File -> User Interface -> Empty -> Call
esta punta"customNib"
.Al
customNib
arrastrar unaUICollectionView
Celda. Déle reutilizar el identificador de celda@"Cell"
.File -> New -> File -> Cocoa Touch Class -> Class
"CustomCollectionViewCell"
subclase nombrada siUICollectionViewCell
.Vuelva a la punta personalizada, haga clic en la celda y cree esta clase personalizada
"CustomCollectionViewCell"
.Ve a tu
viewDidLoad
viewcontroller
y en lugar de[_collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"];
tener
UINib *nib = [UINib nibWithNibName:@"customNib" bundle:nil]; [_collectionView registerNib:nib forCellWithReuseIdentifier:@"Cell"];
Además, cambie (a su nuevo identificador de celda)
UICollectionViewCell *cell=[collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
fuente
Puede manejar celdas personalizadas en la vista de uicollection, vea el código a continuación.
fuente
Documentos de Apple:
Este método se utiliza para inicializar el
UICollectionView
. aquí proporcionas marco y unUICollectionViewLayout
objeto.Al final, agregue
UICollectionView
comosubview
a su vista.Ahora la vista de colección se agrega de forma programática. Puedes seguir aprendiendo.
¡¡Feliz aprendizaje!! Espero que te ayude.
fuente
The layout object to use for organizing items. The collection view stores a strong reference to the specified object. Must not be nil.
fuente
examen de vista de colección
archivo .h
fuente
Para quién desea crear una celda personalizada :
CustomCell.h
CustomCell.m
UIViewController.h
UIViewController.m
fuente
fuente