Скрыть клавиатуру при переключении на другой вид - PullRequest
0 голосов
/ 19 июля 2011

У меня 2 просмотра, войдите и зарегистрируйтесь.

Я сделал [currentTextField resignFirstResponder]; прежде чем перейти к другому виду.

Проблема в том, что клавиатура скрыта только после переключения вида. Который таким образом запустил метод keyboardDidShow в другом представлении, которое запутывает вещи.

2011-07-19 18:55:33.315 Prime Taxi Booking[601:207] Login view appear // lauched app
2011-07-19 18:55:34.952 Prime Taxi Booking[601:207] Login Keyboard appear // starts typing
2011-07-19 18:55:37.033 Prime Taxi Booking[601:207] Register view appeared // navigation
2011-07-19 18:55:37.036 Prime Taxi Booking[601:207] Login view disappear
2011-07-19 18:55:37.360 Prime Taxi Booking[601:207] Register Keyboard disappear // ?? how do I make this to disappear login keyboard instead?

Интересно, почему он переставлял только resignFirstResponder после переключения видов, когда я четко разместил его над ним?

-(IBAction) registerButton:(id) sender
{
[currentTextField resignFirstResponder];
Registers *registerview = [[Registers alloc] initWithNibName:nil bundle:nil];
[UIView beginAnimations:@"flipping view" context:nil];
[UIView setAnimationDuration:1];
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
[UIView setAnimationTransition: UIViewAnimationTransitionCurlUp
                       forView:self.view.superview
                         cache:YES];

[UIView commitAnimations];

[self presentModalViewController:registerview animated:YES];

//[self.view addSubview:registerview.view];

}

1 Ответ

1 голос
/ 19 июля 2011

Вы можете установить задержку перед переходом ко второму виду, чтобы клавиатура скрылась. try [self executeSelector: withObject: afterDelay: 0.35]; // Передаем селектор как @selector (displaySecondView) перед вызовом текущего текстового поля в отставке.

...