2017-10-12 3 views
0

J'ai deux UIButton sur le côté droit de la barre de navigation de UIViewController, les boutons UI ont des images. L'application fonctionnait bien jusqu'à ce qu'elle fonctionne dans Xcode 8, mais quand j'ai mis à jour Xcode 9, ce n'est pas le rendu, c'est prendre toute la barre de navigation. Dans Xcode 8 était enter image description hereL'image dans le bouton de la barre de navigation ne s'affiche pas après la mise à jour vers Xcode 9

mais après la mise à jour Xcode 9 il ressemble à ce

enter image description here

Mon code est à la mise en navbar ...

func setUpNavBar(){ 
    self.navigationController?.navigationBar.isTranslucent = false 
    self.navigationItem.setHidesBackButton(true, animated: true) 


    let notificationBtn = UIButton(type: .custom) 
    notificationBtn.setImage(UIImage(named: "notificationIcon"), for: .normal) 
    notificationBtn.frame = CGRect(x: 0, y: 0, width: 35, height: 35) 
    notificationBtn.addTarget(self, action: #selector(HomeViewController.notificationClicked), for: .touchUpInside) 
    let item1 = UIBarButtonItem(customView: notificationBtn) 

    let profileBtn = UIButton(type: .custom) 
    profileBtn.setImage(UIImage(named: "user_profile"), for: .normal) 
    profileBtn.frame = CGRect(x: 0, y: 0, width: 35, height: 35) 
    profileBtn.addTarget(self, action: #selector(HomeViewController.ProfileClicked), for: .touchUpInside) 
    let item2 = UIBarButtonItem(customView: profileBtn) 
    self.navigationItem.setRightBarButtonItems([item1,item2], animated: true) 

} 

Je suis très confus pourquoi ça se passe.

Répondre

2

En iOS 11 vous devez ajouter/contraintes de hauteur et ensemble avec des UIButton

Pour notificationBtn

let widthConstraint = notificationBtn.widthAnchor.constraint(equalToConstant: 35) 
let heightConstraint = notificationBtn.heightAnchor.constraint(equalToConstant: 35) 
heightConstraint.isActive = true 
widthConstraint.isActive = true 

Appliquer même pour profileBtn aussi.

+0

Je pense que vous devriez marquer comme doublon lol –

+1

Cela fonctionne merci l'homme – Prathamesh