Dépannage becomeFirstResponder ne montrant pas de clavier, pour certains utilisateurs
J'ai eu un TextView
qui est censé montrer sur un bouton de la presse, et de permettre à l'utilisateur d'entrer du texte au moyen du clavier.
- (IBAction) changeName {
changeNameBtn.hidden = YES;
backBtn.hidden = YES;
usernameLabel.hidden = NO;
inputTextField.hidden = NO;
[inputTextField becomeFirstResponder]; //to show keyboard
}
Cela fonctionne très bien pour la plupart d'entre nous.
Mais le Clavier ne se présentent pas pour certains de mes testeurs, à un emplacement distant géographiquement. Comment faire pour dépanner? Et quelle pourrait être la raison pour le comportement différent de nos appareils? Il fonctionne très bien pour moi et tous les autres. Nous utilisons tous les mêmes appareils (iPod, iOS 4.1 - 5.1).
Première chose que j'ai essayé ne fonctionne pas:
J'ai deviné que le inputTextField n'a pas de devenir visible dans le temps, avant de becomeFirstResponder
a été tiré, j'ai donc ajouté setNeedsDisplay
que je pensais que ce serait forcer une mise à jour.
[inputTextField setNeedsDisplay];
[inputTextField becomeFirstResponder];
Deuxième chose que j'ai essayé ne fonctionne pas:
if([inputTextField canBecomeFirstResponder]){
[inputTextField becomeFirstResponder];
}
Troisième chose que j'ai essayé est une solution de contournement, nécessitant le malheureux utilisateur à appuyer sur le champ:
- (IBAction) inputTextFieldTouch {
[inputTextField becomeFirstResponder];
}
Cette solution fonctionne, mais il doit y avoir une meilleure façon. Merci de m'éclairer sur ce que je fais de mal! 🙂 Et la façon d'aborder les questions de ce genre sans être en mesure de dupliquer il à moi?
OriginalL'auteur JOG | 2011-12-12
Vous devez vous connecter pour publier un commentaire.
Le textview pas fini d'être attiré par le temps que vous essayez d'en faire le premier intervenant.
Vous pouvez essayer d'animer l'apparence et la configuration, le premier intervenant dans la réalisation du bloc.
OriginalL'auteur Wombat
J'ai appelé
becomeFirstResponder
plus tard par cette ligne:Il a travaillé pour moi. Espérons que cette aide.
mieux, comment, Ilya?
OriginalL'auteur jeswang
De iOS8, appelant becomeFirstResponder sur un UITextView ne pas afficher le clavier pour moi sur le simulateur iOS, mais il ne le fait sur le périphérique réel. Donc, assurez-vous de vérifier avec un périphérique réel. Ce n'est pas le cas sur iOS7.
Tous mes testeurs utilisent des dispositifs, y compris ceux où le clavier ne s'affiche pas. Comme la question des états, "Nous utilisons tous les mêmes appareils (iPod, iOS 4.1 - 5.1)".
OriginalL'auteur SarpErdag
Essayez de voir si vous pouvez afficher le clavier première:
OriginalL'auteur Rui Peres