iOS 6模拟器键盘无响应。

6

自从我升级Xcode 4.4到4.5以来,我遇到了一个问题。当我启动我的应用程序时,我有一个搜索栏控制器,当我单击它时,会出现一个键盘,但我无法使用我的Mac键盘或模拟器键盘输入内容。

但是,当我使用ShareKit按钮时,一个视图从工具栏中出现。如果我在显示这个ShareKit视图后尝试使用我的搜索栏控制器,它就可以工作了!

这些方法被称为:

- (void)searchDisplayControllerWillBeginSearch:(UISearchDisplayController *)controller
- (void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller

但这些方法并没有被调用,因为键盘没有响应,我无法输入文本。
-(BOOL)searchDisplayController:(UISearchDisplayController *)controller
shouldReloadTableForSearchString:(NSString *)searchString 
- (BOOL)searchDisplayController:(UISearchDisplayController *)controller
shouldReloadTableForSearchScope:(NSInteger)searchOption

但是当我使用这种方法:
- (IBAction)share:(id)sender
{
    if (!_url) {
    return;
}

    SHKItem *item = [SHKItem URL:_url title:@"Share this URL"];
    SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];

    // ShareKit detects top view controller (the one intended to present ShareKit UI)     automatically,
    // but sometimes it may not find one. To be safe, set it explicitly
    [SHK setRootViewController:self];

    [actionSheet showFromToolbar:self.navigationController.toolbar];
}

我可以使用搜索栏键盘后。

有人能帮帮我吗?在iOS 6模拟器之前一切都很完美...

谢谢!

编辑:非常感谢您的帮助,它现在有效了!

我只需要勾选我的mainWindow.xib窗口元素的“启动时可见”复选框即可。

希望这对其他人有所帮助!


除非你分享相关代码部分,否则没有人能帮助你。 - borrrden
4
我曾经遇到过类似的问题,这个问题的答案解决了我的困扰:https://dev59.com/3Wcs5IYBdhLWcg3w-YhD#12504575。 - Stephen Darlington
1个回答

0

你需要正确设置代理。在ViewDidLoad中编写以下代码:

 SearchbarObj.delegate=self;

或在xib中将委托连接设置为文件所有者。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接