Focus sur le UISearchBar mais le clavier apparaît pas
J'ai lu beaucoup de solution sur comment puis-je me concentrer une barre de recherche pour faire de clavier s'affichera lorsque j'ouvre ma page de recherche, et tous ceux qui sont comme cette
[searchBar becomeFirstResponder];
mine is
[self.searchDisplayController.searchBar becomeFirstResponder];
but I tried both.
Maintenant, j'ai essayé, et j'ai également ajouté un
[self.searchDisplayController setActive:YES];
parce que je suis en utilisant un SearchDisplayController, mais jusqu'à présent, le meilleur résultat que je puisse faire, c'est d'avoir le curseur sur la barre de recherche, la uitableview avec une superposition sur elle, mais toujours pas de clavier.
Si je lance le simulateur je peux taper sur la barre de recherche avec mon clavier d'ordinateur, mais sur un iPhone je ne peux pas faire quoi que ce soit.
Si vous voulez donner un coup d'oeil à mon code: http://nopaste.info/39fcda4771.html
l'accent doit être exécutée dans la méthode viewDidLoad
Merci encore.
OriginalL'auteur Lorenzo | 2011-03-29
Vous devez vous connecter pour publier un commentaire.
Je montrais barre de recherche sur textFieldDidBeginEditing:(UITextField *)textField méthode du délégué.
Clavier était pas à l'affiche. Donc la première démissionner textField comme firstResponder.
c'est à dire
Puis d'appeler la méthode avec un délai de
Où
}
Il fonctionne
[self.searchDisplayController.searchBar becomeFirstResponder];
au lieu de[self.searchBar becomeFirstResponder];
?Cela fonctionne bien, mais je vous conseille tout simplement de faire
[self callSearchBar]
à l'intérieur de laviewDidAppear:
méthode. Nous ne savons pas de façon fiable combien de temps le contrôleur de transition pourrait prendre, vous pourriez vous retrouver avec un vilain effet et/ou inattendu tableview artefacts si votre délai est trop court pour concentrer lasearchBar
. +1 malgré tout 🙂Vous devez utiliser
self.searchDisplayController.searchBar
parce que vous avez probablement obtenu leUISearchDisplayController
connecté à votreUITableViewController
, de sorte que vous n'avez pas eu une barre de recherche variable dans votreUITableViewController" class, but you can get this reference through the
UISearchDisplayController variable.OriginalL'auteur Mann
Utiliser le UISearchBarDelegate et de déclarer la barre de recherche dans le fichier d'en-tête comme ça ...
et déclarer votre barre de recherche en loadView
}
et ensuite utiliser becomeFirstResponder sur votre barre de recherche en viewDidAppear
}
fonctionne pour moi, je l'appelle active la barre de recherche après
[super viewDidAppear:animated]
OriginalL'auteur Andy A
La séquence de la matière
Si pas de chance alors de vérifier si un délégué de la recherche contrôleur d'affichage est lié. Aussi la peine de vérifier la teinte de la couleur de la barre de recherche.
OriginalL'auteur Mazen Kasser
Sur le
simulator
, assurez-vous que vous cliquez surToggle Software Keyboard
d'utiliser le clavier du simulateur comme vous pouvez le voir dans l'image.OriginalL'auteur Sawsan