单击文本字段时,键盘不会显示。我在另一个视图中使用pushViewController推送nib。
当我尝试使用非工作文本字段加载nib作为应用程序的默认视图时,它可以正常工作。当我从另一个视图加载它时,它就无法正常工作。
以下是我加载它的代码:
MessageComposeViewController *nextLevelListVC = [[MessageComposeViewController alloc] initWithNibName:@"MessageComposeViewController" bundle:nil];
[self.navigationController pushViewController:nextLevelListVC animated:YES];
[nextLevelListVC release];
答案 0 :(得分:0)
在咨询我的教授之后,他指出了一个可能的解决方案,在实施他所建议的解决方案之后。发布解释以帮助将来遇到此问题的人。
就我而言,这是一个愚蠢的错误。它与我之前在我的应用程序中调用presentModalViewController有关。我以不应该使用它的方式使用它。我用它来从我的登录页面引导流量。这是我流程的基本布局:
->delegate loads login view
'on successful login'
->presentModalViewController:dashboard
'click messages'
->pushViewController
'click create message'
->pushViewController (in the view pushed here, the keyboard wasn't working)
我重新编写了导航系统,使用类似下面的流程:
->delegate loads dashboard 'if not logged in, load login'
->presentModalViewController:login
'click login'(validation would go here, etc)
->dismissModalViewController 'if logged in, go about normal activities' 'click message'
->pushViewController:messageView
'click create message'
->pushViewController (keyboard working now)
当你提出一个模态视图控制器时,你必须先完成并取消它,然后再将视图呈现或推送到导航视图中。
希望这种解释足以让人们了解我的问题以及我是如何解决的。