Je dois ajouter des boutons radio dans mon application iPhone. Pour cela, j'ai une image de bouton radio qui est de forme ronde. Puis-je ajouter cette image en tant que sous-vue? Puis-je ajouter un événement touchupinside à UIImage?Bouton radio dans l'application iPhone
Répondre
Les applications iPhone ne disposent pas de boutons radio. La façon "iPhone-like" de faire cela est soit en utilisant une vue sélecteur ou en ayant plusieurs lignes dans une vue de tableau groupé avec un accessoire de vérification sur la ligne choisie.
Si, pour une raison quelconque, vous ressentez vraiment le besoin d'avoir des boutons radio, utilisez un UIButton avec un type de bouton personnalisé. Définissez le cercle vide comme image pour l'état de contrôle "normal" et le cercle rempli comme image pour l'état "sélectionné".
J'ai essayé ce que vous avez dit, ça marche bien. Initialement, le bouton ressemble à un bouton rond, mais au moment où le bouton est cliqué, le cadre du bouton apparaît (ressemble à un bouton carré) – saikamesh
Comment puis-je me débarrasser de cette chose? – saikamesh
Si celui-ci n'est pas faisable, je dois essayer autre chose. Alors s'il vous plaît dites-moi s'il est possible de se débarrasser de ce comportement – saikamesh
Vous pouvez essayer d'utiliser la classe UIImageView qui enveloppe simplement un UIImage dans un conteneur UIView. Il supporte les évènements touchesBegan/Annulé qui conviendraient je pense. Vous pouvez également envisager de ne pas utiliser une véritable configuration de bouton radio comme vous l'avez décrit et d'adopter une approche similaire à celle de l'iPhone, par exemple, en utilisant un UITableView avec des cellules correspondant à vos sélections radio et en cochant cette option./décoché sur un toucher. Voir l'exemple TouchCells sur le site de développement Apple iPhone pour un exemple.
J'ai créé ma classe de boutons radio en étendant la classe UIButton, dans ma classe de radiobutton, comment J'ai mis le buttontype à UIButtonTypeCustom ?. – saikamesh
Personnalisé est le type de bouton par défaut. –
Salut drewh, Enfin, j'ai fait ce que vous avez suggéré. J'ai utilisé la classe UIImageView et l'événement touchesBegan. Cela fonctionne bien sans problèmes. Merci beaucoup. Merci aussi à Brent de m'avoir donné des idées. – saikamesh
Vous pouvez également créer un UIWebView, y charger du code HTML qui utilise des boutons radio, puis utiliser les méthodes de délégation UIWebView pour surveiller la valeur de la radio.
C'est un peu un hack, mais dans certains cas, c'est exactement ce qu'il faut.
Si vous n'avez que des options "oui" ou "non", utilisez UISwitch.
Pour le type multiple utilisent le code ci-dessous:
-(void)buttonPressed:(id)sender{
if([sender isSelectd])
//here change button image and set
[sender setSelected:NO];
}else{
//here change button image and set
[sender setSelected:YES];
}
rappelez-vous, lorsque vous créez le bouton ne pas oublier de régler la setSelected NO.
Essayez UISegmentedControl. Il se comporte de la même manière que les boutons radio - présente un éventail de choix et permet à l'utilisateur de choisir 1.
savez-vous comment UISegmentedControl peut être créé en Titanium? –
Il n'y a aucun contrôle RadioButton dans l'application iPhone.
Bien que vous puissiez vérifier le lien suivant pour prendre RadioButton.
Ici, nous avons placé deux images à la place de RadioButtons.
http://www.developers-life.com/radio-buttons-in-iphone-application.html
Profitez de codage ........
IBOutlet UIButton *checkboxButtonMale;
IBOutlet UIButton *checkboxButtonFmale;
checkboxButtonFmale.tag = 3;
checkboxButtonMale.tag = 2;
(IBAction)checkboxGenderChecked:(id)sender{
UIButton *selectedButton = (UIButton *)sender;
UIButton *toggledButton;
if (selectedButton.tag == 2) {
toggledButton = checkboxButtonFmale;
}
else {
toggledButton = checkboxButtonMale;
} [toggledButton setSelected:NO];
[sender setSelected:YES];
}
Je l'ai fait quelque chose comme ça et ça marche:
- (IBAction)tickbuttonClicked:(id)sender
{
UIButton *selectedButton = sender;
UIImage *ticked = [UIImage imageNamed:@"tickbox_yes3.png"];
UIImage *unticked = [UIImage imageNamed:@"tickbox_no3.png"];
//untick active box
if((activetag>-1)&&(activetag!=[sender tag])){
UIButton *thisButton = (UIButton *)[self.view viewWithTag:activetag];
thisButton.backgroundColor = [UIColor colorWithPatternImage:unticked];
}
//tick sender
if ([sender tag]!=activetag)
{
selectedButton.backgroundColor = [UIColor colorWithPatternImage:ticked];
activetag=[sender tag];
[selectedButton setSelected:YES];
}
}
Vous pouvez utiliser un tableau de UIButton
s , puis utilisez ma classe GSRadioButtonSetController pour gérer la logique (essentiellement, en vérifiant qu'un seul bouton peut être sélectionné). Voir le fichier README sur GitHub pour un exemple d'utilisation.
voir ce lien, il sera vraiment utile pour vous. https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Button/Concepts/RadioButtons.html
// définir la propriété du bouton
Déclare Unchaked image
- (void)viewDidLoad
{
[ButtonChaked setBackgroundImage:[UIImage imageNamed:@"UnChacked.png"] forState:UIControlStateNormal];
}
Chaked image.
- (IBAction)ButtonChaked:(id)sender
{
if (ButtonChaked.selected ==YES)
{
[ButtonChaked setBackgroundImage:[UIImage imageNamed:@"UnChacked.png"] forState:UIControlStateSelected];
ButtonChaked.selected =NO;
}
else
{
[ButtonChaked setBackgroundImage:[UIImage imageNamed:@"Chaked.png"] forState:UIControlStateNormal];
ButtonChaked.selected = YES;
}
}
qui est vraiment utilisé
Je viens de publier un contrôle de bouton radio iOS Cocoapods pod "DLRadioButton"
, pour la documentation et des exemples, s'il vous plaît aller à GitHub. Ci-joint des captures d'écran pour ce contrôle.
- 1. bouton radio Preselect dans Struts2
- 2. asp.net radio bouton regroupement
- 3. Visibilité du bouton radio
- 4. Générer un bouton radio JQuery
- 5. Bouton radio en cliquant DIV
- 6. Syntaxe du bouton radio NHAML
- 7. Création d'un bouton radio dynamique
- 8. Création d'un bouton radio dynamique avec JQuery
- 9. Aligner le bouton radio avec l'étiquette correspondante
- 10. Formulaire Html, bouton radio et servlet
- 11. jquery bouton radio case cochée attribut?
- 12. bouton radio aligner les propriétés de style
- 13. bouton Réinitialiser radio après un message d'avertissement
- 14. Création d'un bouton radio Cocoa par programmation
- 15. Contrôle du bouton radio w/jQuery
- 16. "Épingler" une classe au bouton radio sélectionné?
- 17. Sélection par programme d'un bouton radio MFC
- 18. Ajout d'un bouton radio à chaque enregistrement
- 19. la syntaxe de demande de bouton radio dans la vue
- 20. bouton radio cachée, mais une boîte dans IE8
- 21. Comment effacer un bouton radio sélectionné dans WatiN?
- 22. aide de formulaire pour créer le bouton radio dans CakePHP
- 23. en utilisant "onclick" avec le bouton radio dans appengine
- 24. Texte de bouton radio Word-wrap en Java?
- 25. Comment redimensionner le texte après: un bouton radio coché?
- 26. AIDE! Obtenez la valeur du bouton radio de contrôle dynamique!
- 27. Comment obtenir le texte d'un bouton radio (pas la valeur)
- 28. Affichage des commandes en fonction du bouton radio sélectionné
- 29. Obtenez le bouton radio de type d'entrée sélectionné ASP.NET
- 30. Sélecteur CSS pour l'étiquette d'un bouton radio coché
J'ai essayé ce que vous avez dit, ça marche bien. Initialement le bouton ressemble à un bouton rond, mais au moment où le bouton est cliqué, le cadre du bouton apparaît (ressemble à un bouton carré) – saikamesh