我将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 Window元素的“在发布时可见”,它可以工作!
希望这会对其他人有所帮助!
答案 0 :(得分:0)
您需要正确设置委托。在ViewDidLoad
中写下这一行 SearchbarObj.delegate=self;
或将委托连接设置为xib中的文件所有者。