Estou procurando um guia ou tutorial que me mostre como configurar um UICollectionView simples usando apenas código.
Estou vasculhando a documentação no site da Apple e também estou usando o manual de referência .
Mas eu realmente me beneficiaria de um guia simples que pode me mostrar como configurar um UICollectionView sem precisar usar arquivos Storyboards ou XIB / NIB - mas, infelizmente, quando eu procuro, tudo o que posso encontrar são tutoriais que apresentam o Storyboard.
ios
objective-c
cocoa-touch
uicollectionview
Jimmery
fonte
fonte
Initializing a Collection View
, você está usando o inicializador a partir daí?Respostas:
Arquivo de cabeçalho:--
Arquivo de implementação: -
Resultado---
fonte
@property (strong, nonatomic) UICollectionView *collectionView;
UICollectionViewCell
, você realmente não deseja se registrarUICollectionViewCell
, mas deseja subclassá-lo, faça sua configuração da célula noinitWithFrame
método e registre essa subclasse com o identificador de célula nãoUICollectionViewCell
._collectionView=[[UICollectionView alloc] initWithFrame:self.view.frame collectionViewLayout:layout];
Para o usuário swift4: -
fonte
Para Swift 2.0
Em vez de implementar os métodos necessários para desenhar
CollectionViewCells
:Usar
UICollectionViewFlowLayout
Implemente os
UICollectionViewDataSource
métodos conforme necessário:fonte
Swift 3
fonte
Com base na resposta de @ Warewolf, o próximo passo é criar sua própria célula personalizada.
Vá para
File -> New -> File -> User Interface -> Empty -> Call
esta ponta"customNib"
.Ao
customNib
arrastar umaUICollectionView
célula, dê-lhe a reutilização do identificador de célula@"Cell"
.File -> New -> File -> Cocoa Touch Class -> Class
"CustomCollectionViewCell"
subclasse nomeada seUICollectionViewCell
.Volte para a ponta customizada, clique na célula e faça essa classe customizada
"CustomCollectionViewCell"
.Vá para o seu
viewDidLoad
viewcontroller
e, em vez de[_collectionView registerClass:[UICollectionViewCell class] forCellWithReuseIdentifier:@"cellIdentifier"];
ter
UINib *nib = [UINib nibWithNibName:@"customNib" bundle:nil]; [_collectionView registerNib:nib forCellWithReuseIdentifier:@"Cell"];
Além disso, altere (para o seu novo identificador de célula)
UICollectionViewCell *cell=[collectionView dequeueReusableCellWithReuseIdentifier:@"Cell" forIndexPath:indexPath];
fonte
Você pode manipular células personalizadas na visualização uicollection, veja o código abaixo.
fonte
Documentos da Apple:
Este método é usado para inicializar o
UICollectionView
. aqui você fornece quadro e umUICollectionViewLayout
objeto.No final, adicione
UICollectionView
como asubview
à sua visualização.Agora, a exibição de coleção é adicionada de forma programática. Você pode continuar aprendendo.
Feliz aprendizado !! Espero que ajude você.
fonte
The layout object to use for organizing items. The collection view stores a strong reference to the specified object. Must not be nil.
fonte
exame de exibição de coleção
arquivo .h
fonte
Para quem deseja criar uma célula personalizada :
CustomCell.h
CustomCell.m
UIViewController.h
UIViewController.m
fonte
fonte