Переустанавливать клавиатуру iPhone программно - PullRequest
0 голосов
/ 20 декабря 2011

В моем профиле создания у меня есть только два текстовых поля: вес и дата рождения.Когда пользователь касается веса, клавиатура показывает.Но когда пользователь касается даты рождения, на листе действий появляется средство выбора даты.Когда пользователь выбирает дату и нажимает кнопку «Готово», лист действий исчезает, но клавиатура остается открытой.И нет возможности спрятать эту клавиатуру.Я использовал метод resignFirstResponder, но не повезло.

Ответы [ 4 ]

4 голосов
/ 20 декабря 2011

вам нужно сделать это, когда вы хотите скрыть клавиатуру:

[textfield resignFirstResponder];
1 голос
/ 20 декабря 2011

[[[UIApplication sharedApplication] keyWindow] endEditing:YES]; будет работать для вас.

1 голос
/ 20 декабря 2011

Вы включили метод:

-(BOOL) textFieldShouldReturn:(UITextField *)textField{

    [textField resignFirstResponder];
    return YES;
}

или

- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
    UITouch *touch = [[event allTouches] anyObject];
    if ([txtComment isFirstResponder] && [touch view] != txtComment)
    {
        [txtComment resignFirstResponder];
    }
    [super touchesBegan:touches withEvent:event];
}
0 голосов
/ 20 декабря 2011
-(void) ViewDidLoad
{

 // your some codes

   UITapGestureRecognizer *gestureRecognizer = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(hideKeyboard)];
   [self.view addGestureRecognizer:gestureRecognizer];
   gestureRecognizer.cancelsTouchesInView = NO;
}

- (void) hideKeyboard 
{
    [textfiledname1 resignFirstResponder];
    [textfieldname2 resignFirstResponder];
}
...