Comment changer le texte du bouton et désactiver un bouton dans iOS?
107
Hey Namratha, Si vous demandez comment changer le texte et l'état activé / désactivé d'un UIButton, cela peut être fait assez facilement comme suit;
[myButton setTitle:@"Normal State Title" forState:UIControlStateNormal]; // To set the title
[myButton setEnabled:NO]; // To toggle enabled / disabled
Si vous avez créé les boutons dans Interface Builder et que vous souhaitez y accéder dans le code, vous pouvez profiter du fait qu'ils sont passés en argument aux IBAction
appels:
- (IBAction) triggerActionWithSender: (id) sender;
Cela peut être lié au bouton et vous obtiendrez le bouton dans l' sender
argument lorsque l'action est déclenchée. Si cela ne suffit pas (car vous devez accéder aux boutons ailleurs que dans les actions), déclarez une prise pour le bouton:
@property(retain) IBOutlet UIButton *someButton;
Ensuite, il est possible de lier le bouton dans IB au contrôleur, le code de chargement NIB définira la valeur de la propriété lors du chargement de l'interface.
Utilisez
UIControlStateNormal
pour définir votre titre.Il y a quelques états fournis par UIbuttons, vous pouvez jeter un œil:
la source
Si quelqu'un, qui cherche une solution à Swift, atterrissait ici, ce serait:
Documentation: isEnabled , setTitle .
Ancien code:
la source
En supposant que le bouton est un
UIButton
:Consultez la documentation pour
UIButton
.la source
Pour changer le titre du bouton:
Pour désactiver:
la source
Dans Swift 3, vous pouvez simplement changer le titre d'un bouton en:
et vous désactivez le bouton en:
.normal
est le même queUIControlState.normal
parce que le type est déduit.la source
SWIFT 4 avec extension
ensemble:
et utilise:
la source
Si vous souhaitez modifier le titre en réponse au fait d'être tapé, vous pouvez essayer ceci dans la méthode IBAction du bouton dans votre délégué de contrôleur de vue. Cela active et désactive un chat vocal. La configuration du chat vocal n'est pas couverte ici!
}
voiceChat est bien sûr spécifique au chat vocal, mais vous pouvez utiliser votre propriété booléenne locale pour contrôler le commutateur.
la source