réglage titleView de la coutume UINavigationBar
J'ai une barre de navigation personnalisée qui ne fait pas vraiment de navigation contrôle de gestion (application dispose d'une seule vue) sa a plutôt utilisé comme un en-tête pour afficher le logo sur un fond uni de couleur. Alors, j'ai mis une barre de navigation sur l'écran principal contrôleur et créé une prise de courant afin que je puisse y faire référence dans le code. (L'utilisation de swift).
Droit maintenant, je suis aux prises avec le réglage de l'image du logo dans le centre de la barre de navigation. J'ai besoin de faire cela avec la titleView (au lieu de définir l'ensemble d'une image d'arrière-plan). Pour l'instant ce que j'ai lu dit d'utiliser self.navigationItem.titleView
dans la vue du contrôleur, mais je pense que cela ne fonctionne que lors de l'utilisation d'un UINavigationController. Voici mon code pour l'instant:
@IBOutlet weak var navBar: UINavigationBar!
override func viewDidLoad() {
super.viewDidLoad()
let logoImage = UIImageView(frame: CGRect(x:0, y:0, width: 200, height: 45))
logoImage.contentMode = .ScaleAspectFit
let logo = UIImage(named: "logo.png")
logoImage.image = logo
self.navigationItem.titleView = logoImage
}
Mais cela ne fonctionne pas. Comment puis-je accéder à la titleView à l'aide d'un custom UINavigationBar comme ça?
OriginalL'auteur Jonson Bylvaklov | 2015-04-14
Vous devez vous connecter pour publier un commentaire.
Vous avez besoin pour accéder à
UINavigationBar
'stopItem
attribut.Vous pouvez ensuite régler le
topItem
'stitleView
avec unUIImageView
.Donc dans votre cas:
Désolé, je veux dire pas
self.navBar
. Je vais le corriger.Quelle est la différence entre topItem et navigationItem? Ne devrait-il pas être une propriété par lequel nous avons accès à des trucs dans NavigationBar de UINavigationController?
utilisation topItem pour un
UINavigationBar
ne s'inscrit pas dans uneUINavigationController
. Sinon utiliser navigationItem.OriginalL'auteur Naoto Ida