2017-10-05 8 views
0

Je crée une interface utilisateur simple pour ma scène de profil, j'utilise collectionview et j'ai mis les contraintes supérieures à égale à superview (0). Cela fonctionne très bien dans mon iPhone 5S (iPhone 4 pouces), mais, dans mon iPhone 7, 8, 8 plus (4,7 & 5,5 pouces), ma position supérieure de collectionview est déplacée au-dessous de ma barre de navigation transparente, ce qui devrait je fais?Xcode 9 position de marge supérieure invalide pour ma collectionVoir dans iPhone plus grand que 5s

-je utiliser ce code à ma barre de navigation transparente

override func viewWillAppear(_ animated: Bool) {   
    let bar = (self.navigationController?.navigationBar)! 
    bar.setBackgroundImage(UIImage(), for: .default) 
    bar.shadowImage = UIImage() 
    bar.isTranslucent = true 
    AnalyticsHelper.track(screen) 
} 

voici mon exemple screenshoot

4 pouces pour l'iPhone semble bon et il commence à y = 0 iphone 5s looks good and fine with 0 of top constraints

4,7 iPhone 5.5 iphone est bizarre, car il commence à y = 64 invalid top position for 4.7 inch and 5.5 inch

et si je vérifie mon décalage dans func scrollViewDidScroll (_ scrollView: UIScrollView), j'ai 0 comme un décalage de départ dans l'iphone 5s, mais dans un iphone plus grand, il a obtenu -64 comme décalage de départ, pourquoi cela pourrait arriver?

Répondre

0

J'ai résolu ce problème en sélectionnant des encarts de contenu pour ne jamais les voir dans mon inspecteur CollectionView Size (L'icône de la règle, 2ème icône à partir de la droite)