2015-05-02 19 views

risposta

17

Implementare collectionView:viewForSupplementaryElementOfKind:atIndexPath: e fornire un UICollectionElementKindSectionHeader dequeued contenente l'etichetta. Se questo è un layout di flusso, assicurati anche di impostare headerReferenceSize o ancora non vedrai nulla.

+1

Codice di esempio qui: https://github.com/mattneub/Programming-iOS-Book-Examples/blob/master/bk2ch08p462collectionViewFlowLayout/ch21p748collectionViewFlowLayout/ViewController.swift – matt

2

Da @ di david72 risposta

è necessario eseguire seguenti cose:

  1. Attiva la sezione di visualizzazione di intestazione/piè di pagina in Storyboard.
  2. Implementare il metodo collectionView:viewForSupplementaryElementOfKind.

Per maggiori dettagli vedi here

2

Per aggiungere l'etichetta personalizzata di sopra di ogni sezione nel UICollectionView, si prega di seguire la procedura

  1. Attivare l'intestazione di sezione in UICollectionViewCell

enter image description here

  1. Aggiungere un nuovo file di tipo UICollectionReusableView
  2. Nello storyboard modificare la classe dell'intestazione di sezione in UICollectionViewCell nel file appena aggiunto di tipo UICollectionReusableView.
  3. Aggiungere un'etichetta nella sezione di intestazione di UICollectionViewCell in storyboard
  4. Collegare l'etichetta nell'intestazione sezione al file UICollectionReusableView

    class SectionHeader: UICollectionReusableView { 
        @IBOutlet weak var sectionHeaderlabel: UILabel! 
    } 
    
  5. Nel ViewController aggiungere il codice qui sotto

    func collectionView(_ collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, at indexPath: IndexPath) -> UICollectionReusableView { 
    
        if let sectionHeader = collectionView.dequeueReusableSupplementaryView(ofKind: kind, withReuseIdentifier: "SectionHeader", for: indexPath) as? SectionHeader{ 
         sectionHeader.sectionHeaderlabel.text = "Section \(indexPath.section)" 
         return sectionHeader 
        } 
        return UICollectionReusableView() 
    } 
    

Qui "SectionHeader" è il nome del file aggiunto al tipo UICollectionReusableView

Problemi correlati