【问题标题】:xCode simulator won't show keyboardxCode模拟器不会显示键盘
【发布时间】:2011-09-23 13:06:07
【问题描述】:

如果我启动一个空白应用程序(单视图应用程序)并简单地将一个 UITextField 放入 NIB,一切都很好:一旦我在模拟器中单击 UITextField 就会显示一个键盘。

如果我启动我正在使用的应用程序,键盘将不会显示(就像我打开了模拟硬件键盘一样)并且我根本无法输入任何文本。但是,如果我在手机上运行相同的应用程序,键盘会出现,我可以像往常一样输入文字。

我确定这与我的代码有关,因为空白应用程序会在模拟器上显示一个键盘。我的设置如下:我有一个 RootViewController,然后添加另一个 ViewController。在这个 ViewController 中,我添加了另一个 ViewController(我希望 UITextField 所在的位置),如下所示:

if (self.addNotebook == nil) {

    NSLog(@"create...");
    AddNotebookViewController *avc = [[AddNotebookViewController alloc]
                                   initWithNibName:nil bundle:nil];
    self.addNotebook = avc;
    [avc release];

}

[self.view addSubview:addNotebook.view];

这个新的 ViewController 中几乎没有任何东西:

#import <Foundation/Foundation.h>

@interface AddNotebookViewController : UIViewController <UITextFieldDelegate>
{
}

...

xib设置如下:

一个简单的 UITextField

文件的所有者类 = AddNotebookViewController

文件的所有者出口视图 = 视图

文本字段委托 = 文件的所有者

所以我不明白为什么键盘没有在模拟器中弹出而在我的手机上弹出...任何建议都非常受欢迎!

【问题讨论】:

  • h 文件中文本字段的 IBOutlet 定义在哪里?
  • @ott 好吧,没有,因为它不是严格需要显示键盘。我试着把它放进去并把它连起来,但它也不会改变任何东西。键盘仍然没有出现。也许与我的几个 ViewControllers 有关?但是键盘绝对不是隐藏的——我根本不能输入任何东西(在模拟器中)。而且我可以在手机上出色地(如预期)打字。

标签: iphone objective-c cocoa-touch uitextfield


【解决方案1】:

好的,我想我找到了问题所在。它与 iOS 5 有关,所以我想我们不能在这里真正讨论这个问题。如果我在 iOS 5 上运行应用程序,我将看不到手机或模拟器上的键盘。

如果我在 iOS 4 或模拟器 iOS 4 上运行应用程序,一切都很好,每个人都很开心。

我仍然不知道为什么会这样......我想我需要前往苹果讨论论坛来解决这些问题?

谢谢

【讨论】:

    猜你喜欢
    • 2013-09-30
    • 2011-08-14
    • 1970-01-01
    • 2015-10-03
    • 1970-01-01
    • 2013-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多