TextField没有显示键盘

时间:2011-11-20 01:35:39

标签: xcode ios5

单击文本字段时,键盘不会显示。我在另一个视图中使用pushViewController推送nib。

当我尝试使用非工作文本字段加载nib作为应用程序的默认视图时,它可以正常工作。当我从另一个视图加载它时,它就无法正常工作。

以下是我加载它的代码:

MessageComposeViewController *nextLevelListVC = [[MessageComposeViewController alloc] initWithNibName:@"MessageComposeViewController" bundle:nil];
[self.navigationController pushViewController:nextLevelListVC animated:YES];
[nextLevelListVC release];

1 个答案:

答案 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)

当你提出一个模态视图控制器时,你必须先完成并取消它,然后再将视图呈现或推送到导航视图中。

希望这种解释足以让人们了解我的问题以及我是如何解决的。