莫代尔弹出不合适

时间:2013-11-19 11:59:20

标签: ios objective-c ios7

键盘弹出后,我有一个模态弹出窗口不合适。

enter image description here

我该如何避免这种行为?

弹出窗口的调用如下:

[self performSegueWithIdentifier:@"loginSegue" sender:self];

在弹出窗口的视图控制器中,我说:

- (void)viewWillLayoutSubviews{
    [super viewWillLayoutSubviews];
    self.view.superview.bounds = CGRectMake(0, 0, 403, 340);
}

提前致谢!

1 个答案:

答案 0 :(得分:0)

尝试像这样呈现viewController,

UIStoryboard *storyboard       = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil];
LoginViewController *loginVC   = (LoginViewController *)[storyboard instantiateViewControllerWithIdentifier:@"loginSegue"];
loginVC.modalTransitionStyle   = UIModalTransitionStyleCoverVertical;
loginVC.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentModalViewController:loginVC animated:YES];

修改

您可以使用原始代码[self performSegueWithIdentifier:@"loginSegue" sender:self];来展示视图,如果上面也给出了相同的结果。

我检查了所有可能的解决方案,发现becomeFirstResponder可能会导致问题。因此,只需将代码becomeFirstResponder放在viewDidLoadviewWillAppear方法中即可。确保它不应该在viewDidAppear方法中。