J'ai un UITextField
Ctrl-glissé en tant que @Outlet
dans ma classe .Swift
. Maintenant, dans viewDidLoad
j'utilise ce code
self.myTextField.keyboardType = UIKeyboardType.DecimalPad
Quand je lance mon application sur le simulateur et que je clique sur le UITextField
j’ai eu ce journal
Can't find keyplane that supports type 8 for keyboard
iPhone-Portrait-DecimalPad;
using 2617181025_Portrait_iPhone-Simple-Pad_Default
Je n'ai pas de crash ou quelque chose mais le clavier n'est pas affiché. J'ai aussi essayé de le définir à partir de Storyboard
mais c'est la même chose.
J'ai aussi remarqué que chaque fois que je clique sur quelconque UITextField
le clavier n'est jamais affiché (mais aucun journal n'est affiché pour le valeur par défaut). clavier)
J'utilise Xcode-Beta 3 Quelqu'un a-t-il rencontré ce problème?
Moi aussi j'ai eu ce problème après la mise à jour vers la dernière version bêta de Xcode. Les paramètres du simulateur étant actualisés, le clavier de l'ordinateur portable (externe) a été détecté. Si vous appuyez simplement sur:
iOS Simulator -> Matériel -> Clavier -> Connecter le clavier
alors le clavier du logiciel sera affiché à nouveau.
Allez à iOS Simulator-> Hardware-> Keyboard ->
Décochez l’option Connect Hardware Keyboard
. Cela résoudra le problème.
Si vous obtenez ce bogue avec Xcode Beta, c’est un bogue de la bêta et peut être ignoré (pour autant que je sache). Si vous pouvez créer et exécuter une version finale de Xcode sans cette erreur, ce n'est pas votre application qui pose problème.
Pas à 100%, mais voyez si cela résout le problème:
simulateur iOS -> Matériel -> Clavier -> Basculer le clavier logiciel.
Ensuite, tout fonctionne
Ce message survient lorsque le type de clavier est défini sur NumberPad ou DecimalPad. Mais le code fonctionne très bien. On dirait que c'est un bug avec le nouveau Xcode.
J'ai résolu ce problème en décochant la case "Connecter le clavier matériel". Veuillez vous référer à l'image ci-dessous pour résoudre ce problème.
Xcode: 6.4 iOS: 8 J'ai aussi cette erreur, mais pour une raison très différente.
//UIKeyboardTypeNumberPad needs a "Done" button
UIBarButtonItem *doneBarButton = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(doneBarButtonTapped:)];
enhancedNumpadToolbar = [[UIToolbar alloc]init]; // previously declared
[self.enhancedNumpadToolbar setItems:@[doneBarButton]];
self.myNumberTextField.inputAccessoryView = self.enhancedNumpadToolbar; //txf previously declared
J'ai eu la même erreur (sauf que le mien était "type 4" plutôt que "type 8"), jusqu'à ce que j'ai découvert qu'il me manquait cette ligne:
[self.enhancedNumpadToolbar sizeToFit];
Je l'ai ajouté, et le soleil a commencé à briller, les oiseaux ont recommencé à pépier, et tout allait bien pour le monde.
PS Vous obtiendrez également une telle erreur pour d’autres méfaits, tels que l’oubli de alloc/init.
Cette erreur est survenue lorsque votre type d'entrée au clavier est pavé numérique. J'ai la même erreur que lorsque je modifie mon type d'entrée au clavier Textfield par défaut pour corriger mon problème.