La mise à jour de UIImage sur UiBarButtonItem à partir de l'identificateur de l'image

Je suis actuellement en train de faire une application pour IOS, mais je vais avoir du mal à changer une image... quelle honte...

La situation est comme ceci :
J'ai une barre d'outils contenant mes articles, et un de ces éléments est le bouton de lecture créées à partir de l'identificateur de "Jouer". Donc, j'ai mon bouton de lecture sans problème. Maintenant, je veux juste de la changer pour une pause de l'image quand je clique sur l'élément, puis à nouveau l'interrupteur etc.
Donc j'ai aimé dans mon .soit h le point de me donner :

@property (weak, nonatomic) IBOutlet UIBarButtonItem *play;

J'ai essayé beaucoup de réponses que j'ai trouvé sur ce site et aucun d'eux n'a fonctionné sur mon cas :/
Le dernier que j'ai essayé quelque chose comme :

UIButton *button1=[UIButton buttonWithType:UIButtonTypeCustom];
[button1 setFrame:CGRectMake(10.0, 2.0, 45.0, 40.0)];
[button1 addTarget:self action:@selector(showLeft:) forControlEvents:UIControlEventTouchUpInside];
[button1 setImage:[UIImage imageNamed:@"pause.png"] forState:UIControlStateNormal];
UIBarButtonItem *button = [[UIBarButtonItem alloc]initWithCustomView:button1];
self.play = button;

J'ai aussi essayé :

self.play.customView = button1;

Mais aucun d'entre eux fonctionnent vraiment, je peux obtenir l'image en faisant

self.view = button1;

Mais seulement l'image (donc la création de la UIImage est d'accord) dans le milieu de l'écran....

(Si vous pouvez aussi me dire comment revenir à la lire à l'aide de l'identificateur il serait également très utile merci beaucoup)

Merci pour votre aide.

Avez-vous essayé en changeant simplement le bouton de customView propriété à vue avec la pause de l'image?
Eh bien, je vous suggérons d'utiliser les images en fonction des différents états. Définir une image pour UIControlStateNormal, et de l'attribuer bouton de lecture et de définir une autre image pour UIControlStateSelected et assigner le bouton pause. Chaque fois que le bouton est sélectionné, passer à l'état de bouton à l'aide d'une simple règle de ce type; bouton.selected = !bouton.sélectionné j'espère que cela résout votre problème.

OriginalL'auteur Clad Clad | 2013-08-05