J'ai UIView
dans ma cellule. UICollectionview
premières charges, les ombres ne regardent pas comme je l'ai prévu. Mais quand je défile, les ombres deviennent normales.swift - L'ombre d'UIVue ne s'affiche pas correctement
self.backView.layer.cornerRadius = 3
self.backView.clipsToBounds = true
self.backView.layer.shadowPath = UIBezierPath(roundedRect: self.backView.bounds, cornerRadius: self.backView.layer.cornerRadius).CGPath
self.backView.layer.shadowColor = UIColor.blackColor().CGColor
self.backView.layer.shadowOpacity = 0.3
self.backView.layer.shadowOffset = CGSizeMake(0, 1)
self.backView.layer.shadowRadius = 1
self.backView.layer.masksToBounds = false
Ombres rendus mal:
Ombres rendus correctement:
Edit-1: J'ai trouvé la cause, mais pas la solution. cadre de cellule du story-board et le cadre cellulaire du temps d'exécution sont différentes parce que je change la hauteur de cellule & largeur comme ceci:
func collectionView(collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAtIndexPath indexPath: NSIndexPath) -> CGSize {
return CGSizeMake(collectionView.frame.width/3, collectionView.frame.height)
}
Alors, quand je retire ce code, les ombres sont affichées correctement. Mais je ne peux pas définir la hauteur & hauteur via le code.
Où avez-vous géré ce code? – nynohu
à l'intérieur de collectionViewCell –
affichez du code supplémentaire –