Como posso mostrar o teclado por padrão no UITextView?
-
06-07-2019 - |
Pergunta
Eu quero criar uma exibição que consiste unicamente de um UITextView
. Quando a vista é exibido pela primeira vez, por padrão, eu gostaria que o teclado para ser visível e pronto para entrada de texto. Desta forma, o usuário não tem que tocar o UITextView
primeiro, a fim de começar a editar.
Isso é possível? Eu vejo a classe tem uma notificação chamada UITextViewTextDidBeginEditingNotification
mas eu não tenho certeza de como enviar isso, ou se isso é mesmo a abordagem correta.
Solução
para conseguir isso basta enviar a mensagem becomeFirstResponder ao seu UITextField, como segue (supondo que você tem uma saída chamada textField, apontando para o campo em questão):
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[textField becomeFirstResponder];
}
Outras dicas
Em Swift
Para mostrar automaticamente o teclado, com o seguinte:
override func viewDidLoad() {
super.viewDidLoad()
// show keyboard
textView.becomeFirstResponder()
}
Notas
- Isto pressupõe que a exibição de texto é editável.
- funciona tanto para
UITextView
eUITextField
- Para ocultar a
textView.resignFirstResponder()
uso do teclado
A seguir bem trabalhado para mim usando Swift
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
// Show keyboard by default
billField.becomeFirstResponder()
}
Key é usar a função viewDidAppear.