est-il possible de configurer un uitxtfield avec une View de gauche de sorte que si un utilisateur clique sur le clavier Uitextfield, le clavier montre, mais s'ils cliquent sur une icône dans la sortie de la View, une autre méthode est appelée (c.-à-d. Un, un qui affiche un uipickerview)? p>
3 Réponses :
Avez-vous essayé d'utiliser un Uibutton pour cette tâche? De la documentation de la propriété de gaucheView: p>
Si votre vue de superposition ne se chevauchent pas toute autre vue sur la fratrie, elle reçoit Touchez des événements comme une autre vue. Si Vous spécifiez un contrôle pour votre vue, La commande piste et envoie des actions comme d'habitude. Si une vue de superposition chevauche le bouton clair, cependant, le clair bouton prime toujours la priorité dans recevoir des événements. P> blockQuote>
Créez donc une instance UIBUTON, configurez son apparence et ses actions au besoin, puis définissez-la comme la propriété de gaucheView. P>
En fait, cela ne fonctionne pas. Voici ce que j'ai: uibutton * détailbutton = [[[UIButton Alloc] init]; [détailButton Settimage: [UIIMAGE Imagenamed: @ "TextView-list-icon.png"] Forstat: uicontrolstatenormal]; self.propertyfield.leftview = DétailButton; [Détail de la libération]; Le code compile et fonctionne sans aucune erreur ni avertissements dans la console, mais le bouton n'est pas affiché. Ai-je mal compris cela? Merci.
Essayez de régler le cadre du bouton. À moins que vous spécifiez un cadre, cela ne saura pas où et comment se dessiner, de sorte que vous ne le verrez pas. C'est pourquoi vous souhaitez généralement utiliser InitwithFrame au lieu d'INIT pour UIView Sous-classes, vous n'aurez donc pas à être troublé de la définir plus tard.
Avez-vous vérifié que la gaucheFieldViewMode est définie sur autre chose que jamais
[textField setLeftViewMode:UITextFieldViewModeAlways];
Instanciez un bouton lorsque vous faites normalement instanciez un champ de texte comme vous le faites normalement p> pour définir une vue à gauche (Il y a une vue correcte aussi disponible) p> si vous voulez que la vue affiche toujours, le code est-il p> Si vous voulez que la vue affiche jamais alors p> si vous voulez que la vue soit affichée si le champ de texte n'est pas modifié, alors ci-dessous P> -(void)BtnClick
{
//Usual pop over coding goes here
}