UITextField клавиатура отклонить при нажатии кнопки для метода UIApplication
Я иду от раскадровки к UISplitViewController в XIB. Я хочу выйти из моего представления раскадровки, что приведет меня к UISplitViewController. В контроллере раскадровки у меня есть UITextField. Я установил его так, чтобы он не исчезал сам после нажатия клавиши ввода. Однако теперь он остается открытым, даже когда я переключаюсь на контроллер splitview, который я явно не хочу, потому что я хочу выйти из системы.
Кнопка выхода
UIBarButtonItem *logoutButton = [[UIBarButtonItem alloc] initWithTitle:@"Log Out" style:UIBarButtonItemStylePlain target:self action:@selector(confirmLogout)];
Способ воспитания UISplitViewCOntroller
- (void)alertView:(UIAlertView *)alertView willDismissWithButtonIndex:(NSInteger)buttonIndex
{
if (alertView.tag==TAG_DEV){
if (buttonIndex) {
[[[UIApplication sharedApplication] delegate] performSelector:@selector(gotoSplitViewController)];
} else {
[self.navigationController popViewControllerAnimated:YES];
}}
}
Метод gotoSplitViewController в делегате:
-(void)gotoSplitViewController{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
ListViewController *listVC = [[ListViewController alloc] initWithStyle:UITableViewStylePlain];
UINavigationController *listNC = [[UINavigationController alloc] initWithRootViewController:listVC];
AssignedViewController *assignedVC = [[AssignedViewController alloc] initWithNibName:@"AssignedViewController" bundle:nil];
UINavigationController *assignedNC = [[UINavigationController alloc] initWithRootViewController:assignedVC];
//assign the views to the new nav view controllers
splitViewController = [[UISplitViewController alloc] init];
splitViewController.delegate = assignedVC;
splitViewController.viewControllers = @[listNC, assignedNC];
listVC.detailViewController = assignedVC;
[[self window] setRootViewController:splitViewController];
self.window.backgroundColor = [UIColor whiteColor];
[self.window makeKeyAndVisible];
}
мой UITextField
self.textBox = [[UITextField alloc] initWithFrame: CGRectMake(10, 660, 750, 90)];
self.textBox.backgroundColor = [UIColor colorWithRed:(209/255.0) green:(236/255.0) blue:(232/255.0) alpha:1];
self.textBox.returnKeyType = UIReturnKeySend;
self.textBox.delegate = self;
[self.view addSubview:self.textBox];
Я пробовал resignFirstResponder, если различные места, в том числе добавление
- (void)viewWillDisappear:(BOOL)animated
{
[self.textBox resignFirstResponder];
}
Однако ни один из них не работает. Как заставить клавиатуру исчезнуть после смены представлений?
1 ответ
Я поставил
self.chatBox.delegate=nil;
в моих методах для переключения представлений