Как показать клавиатуру после использованного inputView
Я использовал inputView
показывать uipickerview
для меня textfield
, но я использую то же самое textfield
для других функций. Как я могу показать стандартную клавиатуру после того, как я использовал inputView
для этого textfield
?
textfield.inputView = pickrView;
3 ответа
Решение
Как сказал Павел Кальюнен, вам нужно только установить для inputView значение nil, но когда клавиатура уже видна, вы должны сначала выполнить resignFirstResponder, установить для inputView значение nil, а затем снова стать FirstResponder.
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.35];
[yourTextField resignFirstResponder];
yourTextField.inputView = nil;
[yourTextField becomeFirstResponder];
[UIView commitAnimations];
Я думаю, что этот код может работать
[textField.inputView addTarget:self action:@selector(doTest) forControlEvents:UIControlEventTouchUpInside];
- (void)doTest
{
if([textFiled isFirstResponder])
{
[textFiled resignFirstResponder];
}
else
{
[textFiled becomeFirstResponder];
}
}