2017-06-12 3 views
0

lorsque je mets en œuvre sous le code: en utilisant la méthode de sizeForItemAtSwift: UICollectionView cellule ne peut pas mettre à jour cadre lorsque la mise en œuvre sizeForItemAtIndexPath

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize{ 

    let cellW = (ScreenWidth - 10 - 10 - 30)/4 

    return CGSize(width: cellW, height: cellW * 1.5) 

} 

, je peux dessiner cadre ce que je veux, mais ma cellule de CollectionView personnalisé ne peut pas mettre à jour aussi sage , où ai-je manqué, plz m'aider !!

my custom cell

debug view

+0

Ajouter une contrainte pour votre image de premier plan/arrière/haut en Superview? Et ajouter des contraintes manquantes pour la vue de dessous? – Larme

+0

J'ai déjà ajouté de la contrainte pour mon imageview et mon label, il semble que le problème de la cellule de collection, peut-être que je manque quelque chose dans awakefromNib? http://imgur.com/a/6N9qC –

+0

http://imgur.com/a/XOVTn ceci est mon storyboard frameview cellule de cellule –

Répondre

0

i fixer par cette ref UICollectionView cell subviews do not resize

Merci les gars, à Frist ont encore problème avec mon Cell.imageview, ne peut pas la forme ronde comme je veux, et je crée une classe pour imageview, ci-dessous:

class CellImageView: UIImageView { 
override func layoutSubviews() { 
    super.layoutSubviews() 
    let radius: CGFloat = self.bounds.size.width/2.0 
    self.layer.cornerRadius = radius 
    self.clipsToBounds = true 

} 

et tout fonctionne perfec TLY

0

S'il vous plaît, mettre dans votre classe CollectionViewCell

override func awakeFromNib() 
{ 
    self.contentView.autoresizingMask.insert(.flexibleHeight) 
    self.contentView.autoresizingMask.insert(.flexibleWidth) 
} 

il est peut-être vous aider à