Personnalisé “Pressé” UIBarButtonItem Milieux
Je suis en train de personnaliser pressé image pour mon UIBarButtonItem mais rien ne semble fonctionner. De ma compréhension, le code ci-dessous devrait fonctionner, mais en dépit de réglage de l'image mise en évidence de l'état, le bouton est exactement le même lorsqu'il est pressé.
Des idées?
UIImage *barButtonBackground = [[UIImage imageNamed:ANBarButtonItemBackgroundImageName] resizableImageWithCapInsets:UIEdgeInsetsMake(5.0f,5.0f, 5.0f, 5.0f)];
UIImage *barButtonPressedBackground = [[UIImage imageNamed:ANBarButtonPressedImageName] resizableImageWithCapInsets:UIEdgeInsetsMake(5.0f,5.0f, 5.0f, 5.0f)];
[self.navigationItem.leftBarButtonItem setBackgroundImage:barButtonBackground forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.navigationItem.rightBarButtonItem setBackgroundImage:barButtonBackground forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
[self.navigationItem.leftBarButtonItem setBackgroundImage:barButtonPressedBackground forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];
[self.navigationItem.rightBarButtonItem setBackgroundImage:barButtonPressedBackground forState:UIControlStateHighlighted barMetrics:UIBarMetricsDefault];
Comment êtes-vous créer vos boutons? Quelle image peut-on le voir?
Êtes-vous sûr que la touche de l'image est réellement différent? Essayez d'échanger les images.
J'ai vérifié les deux images - ils sont différents. Les boutons sont créés dans mon Storyboard. IBActions, des icônes et des sofourth tous les travaux sur le bouton de la barre d'articles-- je ne peux pas obtenir sur l'autre image à apparaître pour ces BarButtonItems lorsqu'il est en surbrillance.
Avez-vous utilisé ce bouton personnalisé méthode fournie dans ma Réponse ?
Dans la méthode qui est-ce? Êtes-vous sûr que votre
Êtes-vous sûr que la touche de l'image est réellement différent? Essayez d'échanger les images.
J'ai vérifié les deux images - ils sont différents. Les boutons sont créés dans mon Storyboard. IBActions, des icônes et des sofourth tous les travaux sur le bouton de la barre d'articles-- je ne peux pas obtenir sur l'autre image à apparaître pour ces BarButtonItems lorsqu'il est en surbrillance.
Avez-vous utilisé ce bouton personnalisé méthode fournie dans ma Réponse ?
Dans la méthode qui est-ce? Êtes-vous sûr que votre
leftBarButtonItem
et rightBarButtonItem
sont déjà fixés?
OriginalL'auteur aroooo | 2013-01-10
Vous devez vous connecter pour publier un commentaire.
Je pense que vous devriez créer un
custom UIButton
avec images d'arrière-plan pour les différents de contrôle des états qui correspondent à votre schéma de couleurs, puis de les utiliserUIButton
comme la vue d'uncustom UIBarButtonItem
.Si vous voulez une autre Référence, alors vous pouvez aller à travers ce beau lien : À l'aide de l'Apparence de Proxy pour Style Apps
Cela devrait fonctionner, mais que si nous voulons mettre des images différentes pour les différents états (pas les images de fond)? le setImage méthode sur la UIBarButtonItem ne semble pas avoir un forState méthode... j'ai besoin de l'image elle-même à changer, et pas seulement l'arrière-plan. Toutes les idées à ce sujet?
Même question que stan??
OriginalL'auteur Bhavin
Vous pouvez probablement essayer comme ça. Fonctionne pour moi.
OriginalL'auteur Pushpak Narasimhan
Peut-être que ce sera vous aider (juste ajouter que les fichiers du projet):
UIBarButtonItem+customLook.h
UIBarButtonItem+customLook.m
Quelques-vue-contrôleur:
...
OriginalL'auteur caentist
Ouais, c'est vrai 🙂 Merci pour votre suggestion @cocoanut.
OriginalL'auteur Abo3atef