en gardant un UIButton enfoncé(état de sélection mise en surbrillance),jusqu'à ce qu'une autre touche est pressée?
J'ai 3 boutons au bas de mon point de vue, contrôleur, btn1 btn2 btn3, je suis en les utilisant à la place de la barre d'onglet comme il n'est pas possible de personnaliser une barre d'onglet comme pour mes besoins.
Maintenant la question est, quand btn1 est pressé, je veux qu'il à changer son image, à un rectangle gris, au lieu de l'image de l'état normal. J'ai mis les images pour les deux etats dans la prise, j'ai déclaré pour le bouton, btn1Outlet, à l'aide de la setimage et uicontrolstate propriétés de la prise de courant.
Le problème est, je ne peux pas garder le bouton sélectionné jusqu'à ce que disent ou btn2 ou btn3 est pressé. btn l'un des changements à l'état sélectionné l'image qu'aussi longtemps qu'il est pressé, le moment ou je le laisse, il change à son état normal.
Comment puis-je garder btn1 de l'image sélectionnée de l'image jusqu'à ce que les 2 autres boutons sont pressés?
OriginalL'auteur OccamsRazor | 2012-06-24
Vous devez vous connecter pour publier un commentaire.
Ce que vous avez fait est de définir une image pour le "Souligné" l'état, c'est pourquoi lorsque vous appuyez dessus, vous pouvez voir votre image.
Ce que vous voulez faire est de
1) définir l'image pour l'état SÉLECTIONNÉ
2) créer une propriété pour votre vue-contrôleur (juste controll faites glisser le bouton à l'en-tête) à l'aide de l'assistant de vue (tout sur le storyboard, la deuxième carré en haut à droite)
3) sur votre méthode pour le bouton de action du type:
(évidemment remplacer le bouton à tout ce que vous avez nommé votre propriété)
bien sûr, ces boutons ne sont pas liés les uns avec les autres que vous avez à faire de la logique de vous-même. quelque chose comme sur l'action du bouton 2 ajouter le button1.sélectionné = NON; bouton3.sélectionné=NON;
Oh k, merci, je me demandais si c'est la bonne façon de le faire.N'a que maintenant.Merci.BTW, selon vos connaissances y aurait-il possibilité d'un problème se pose avec les apps approbation si j'utilise ce genre de méthode, au lieu de la barre d'onglet?
tant que sa justifie pas, mais il est possible de personnaliser une barre d'onglet.
OriginalL'auteur Pochi
Voici ce que j'ai fait:
Ensemble les 2 autres boutons n'est pas sélectionnée
Espère que cette aide.
Cheers!
OriginalL'auteur Emma Li
De garder le bouton sélectionné, vous devez appeler setSelected:OUI dans la méthode que votre bouton d'appels. Par exemple:
Je sais que cela semble un peu bizarre d'appeler performSelector: au lieu de simplement appeler [expéditeur setSelected:OUI], mais ce dernier ne fonctionne jamais pour moi, tandis que le premier ne!
Afin d'obtenir les boutons pour désélectionner quand un autre est pressée, je vous suggère d'ajouter une variable d'instance qui contient un pointeur sur le bouton actuellement sélectionné, de sorte que quand un nouveau est touché, vous pouvez appeler flipButton: pour désélectionner l'ancien en conséquence. Alors maintenant, votre code doit lire:
ajouter un pointeur vers l'interface
et ces méthodes à votre mise en œuvre
Assurez-vous que lorsque vous définissez la cible pour le bouton que vous appelez le sélecteur sur "methodThatYourButtonCalls:" et PAS "methodThatYourButtonCalls" (notez que vous devez disposer de la semi-colon si vous prévoyez sur l'utilisation de l' :(id) sender argument
OriginalL'auteur Kpmurphy91