Pergunta

Tenho procurado maneiras de configurar um UICollectionView para um aplicativo iOS.O Google só exibe alguns blogs com postagens sobre o que não é como funciona.Depois, é claro, há a documentação da Apple que é útil, mas não fornece tantas informações quanto eu gostaria de poder configurar um UICollectionView.

Como alguém pode configurar um UICollectionView?

Foi útil?

Solução

O classe é quase idêntica à Aula.Eles compartilham muitos dos mesmos métodos e funções.E se os métodos/funções forem diferentes, na maioria das vezes é só trocar “linha” por “célula” e vice-versa.No entanto, existem alguns métodos que não existem no UICollectionView que existem no UITableView.Porém, primeiro explicarei como configurar um UICollectionView:

  1. Comece adicionando seu UICollectionView a um ViewController atual ou criando um novo UICollectionViewController.As etapas não são muito diferentes para a visualização e o controlador.
  2. Se você estiver usando o View e não o ViewController, certifique-se de que o Delegar e Fonte de dados do CollectionView é o controlador de visualização em que está.Certifique-se também de adicionar Delegate e DataSource ao seu arquivo de cabeçalho: <UICollectionViewDataSource, UICollectionViewDelegate>

  3. Em seguida, certifique-se de incluir estes três métodos na classe do seu controlador de visualização:

    -(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView
    
    -(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
    
    -(UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
    
  4. Estes são os únicos métodos necessários.A primeira informa à visualização da coleção o número de seções que ela deve ter.Isso deve retornar um valor inteiro.O segundo método obtém o número de células em cada seção.Novamente, isso deve retornar um valor inteiro.O último método preenche cada célula usando os dados fornecidos (geralmente de um NSArray).Este último método deve retornar um CollectionViewCell.Se você definir pontos de interrupção neste método, notará que ele é chamado uma vez para cada célula definida no numberOfItemsInSection método.

UICollectionViews fornecem métodos avançados de animação e permitem que as células sejam desmarcadas e selecionadas (semelhante a aplicativos como Pages quando no modo 'Editar').No entanto, até onde sei, UICollectionViews não fornece recursos como "deslizar para excluir" ou algum tipo de indicador de divulgação.

UICollectionViews também permitem criar células personalizadas usando (também conhecido como ), isso permite algumas interfaces exclusivas e de aparência muito avançada, sem muitos códigos complicados.

Infelizmente, UICollectionView só é compatível com iOS 6 e superior.Existem alguns projetos disponíveis, como PSTCollectionView que adiciona suporte para CollectionViews no iOS 4.3+, mas ainda não descobri como usá-los.No meu caso, quando a visualização é carregada, apenas verifico se a classe UICollectionView está disponível e, se não estiver, carrego uma tabela.

Aqui está um link para a documentação oficial da Apple sobre Visualizações da coleção.Você também pode querer verificar isso tutorial.

Outras dicas

Eu criei um passo a passo tutorial para configurar UICollectionViews com layouts personalizados.Esperamos que ajude algumas pessoas a se familiarizarem com a API.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top