J'ai un UITextField dans une vue Paysage, et lorsque j'appuie sur le bouton "Quitter le clavier" en bas à droite de la vue UIKeyboard, le clavier ne disparaît PAS. Existe-t-il un moyen d'écouter par programmation lorsque cette touche a été pressée? Ou y a-t-il un lien que je ne vois pas qui fera disparaître ce clavier? Ceci est iOS 4 et XCode 4. Merci.Le bouton "Annuler le clavier" de l'iPad ne rejette pas le clavier
Répondre
J'ai eu le même problème aujourd'hui et je me demandais, wy il fonctionne dans le code d'échantillon KeyboardAccessory d'Apple. J'ai donc fait du reverse engineering. Le ViewController n'était pas l'erreur que j'ai faite dans mon cas.
Dans l'implémentation de UIApplicationDelegate, il y a le point d'entrée de l'application, où le viewcontroller racine et la fenêtre seront configurés - (void) applicationDidFinishLaunching:(UIApplication *)application
. Si vous avez oublié d'ajouter la vue rootcontrollers à la fenêtre en tant que sous-vue, le bouton de suppression du clavier ne fonctionnerait pas dans les vues de votre application.
@class ViewController;
@interface KeyboardAccessoryAppDelegate : NSObject <UIApplicationDelegate> {
UIWindow *window;
ViewController *viewController;
}
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet ViewController *viewController;
@end
...
- (void)applicationDidFinishLaunching:(UIApplication *)application {
[window addSubview:viewController.view];
[window makeKeyAndVisible];
}
S'il vous plaît ne pas oublier de configurer les points de vente dans le fichier principal xib.
Je ne sais pas pourquoi cela est lié au comportement des claviers. Mais ma théorie est, que la chaîne répondeur n'est pas liée à la fenêtre, mais il a besoin.
Vous devez indiquer au champ de texte acceptant l'entrée au clavier de ne plus être le premier répondeur.
[UITextField resignFirstRepsonder];
Pour masquer le clavier en utilisant le si vous voulez rejeter le clavier en appuyant sur l'extérieur de celui-ci, rejeter le bouton du clavier vous devez implémenter la méthode déléguée
- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
//Check if your text field is first responder, and if it is, have it resign
}
Vous pouvez également utiliser
-(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
{
for (UIView* view in self.view.subviews)
{
if ([view isKindOfClass:[UITextField class]]) {
[view resignFirstResponder];
}
if ([view isKindOfClass:[UITextView class]]) {
[view resignFirstResponder];
}
}
}
Merci @capt kettch - Je l'ai déjà dans mon code ... voici un extrait ... J'ai la classe configurée en tant que délégué pour UITextField: '@interface SettingsController: UIViewController
J'ai oublié de mentionner, vous devez vous assurer que votre champ de texte a son jeu de délégué au contrôleur de vue (le plus probable de soi) –
- 1. resignFirstResponder ne rejette pas le clavier ASCII pour UITextField
- 2. Faire annuler le bouton du clavier inférieur
- 3. applicationWillResignActive Annuler le clavier iPhone
- 4. Annuler le clavier en HTML
- 5. Comment annuler le clavier dans UISearchbar?
- 6. Le clavier ne disparaît pas
- 7. Tremplin rejette clavier
- 8. Ne pas obtenir le bouton "Go" sur le clavier android
- 9. Quitter le clavier sur le bouton «Terminé» du clavier
- 10. Le clavier ne répond pas
- 11. Je rejette le clavier du contrôleur d'affichage de recherche
- 12. Clavier IPad "Masquer le bouton"
- 13. resignFirstResponder ne cache pas le clavier
- 14. Ouvrir le clavier sur le bouton cliquez
- 15. Le clavier de Meteor ne fonctionne pas
- 16. Afficher le clavier virtuel lorsque le clavier Bluetooth est connecté?
- 17. Annuler le raccourci clavier après la correspondance de GetAsyncKeyState?
- 18. Comment annuler le clavier lorsque vous appuyez sur le bouton "Search" de la barre UISearch?
- 19. jQueryMobile - Filtrer dans ListView et appuyer sur Go sur le clavier ne cache pas le clavier
- 20. Le clavier IPhone ne répond pas
- 21. Ne pas rejeter le clavier avec rechargeCollectionCellule
- 22. iOS - Le clavier ne s'affiche pas
- 23. UISearchBarDisplayController ne me montre pas le clavier
- 24. Le clavier ne semble pas sur Iphone
- 25. Ne pas afficher le clavier sur iOS
- 26. le clavier ne répond pas à resignFirstResponder
- 27. Le clavier ne peut pas être résolu
- 28. détecter le bouton de recherche du clavier
- 29. Evénement/délégué pour le bouton Annuler sur le clavier de l'iPad
- 30. vb.net comment simuler le clavier et le clavier
Oui - ce n'est pas un problème. Le clavier disparaît lorsque ce message est envoyé. Le problème est que rien ne se passe lorsque le bouton 'Rejeter le clavier' en bas à droite du clavier de l'iPad (qui ressemble à une petite icône du clavier) est enfoncé. Et le champ de texte ne reçoit aucune entrée de cette clé. Je me demande vraiment si j'ai rencontré un bug à ce stade. Merci quand même. –