该应用程序具有带有表格视图和UISearchbar的UIView。 Searchbar委托方法位于UIView的视图控制器中。一切都似乎正确地连接起来。UISearchBar无法在IOS 6 Popover中工作
此搜索栏在iOS 5中正常工作,但不在iOS6中正常工作。触摸时,搜索栏会显示键盘,但在键盘上键入没有任何影响; textDidChange委托方法永远不会被调用。
只有在iPad上运行时才会发生这种情况。 iPad与iPhone之间的视图差异在于带有UITableView和UISearchbar的UIView在iPad上的弹出窗口中运行。在iPhone上,它作为单独的视图运行。在这两种情况下,一旦打开视图,UINavigationController管理视图。导航控制器上下的所有导航都可以在两个设备上正常工作;唯一的区别是UISearchBar不能在popover中运行。
很明显,iOS 5和iOS 6之间有些变化,但我一直无法弄清楚在iOS 6弹出窗口中如何使搜索栏工作。
任何帮助将不胜感激!
你可能会在这里找到一些线索(这取决于你的问题的确切性质):http://stackoverflow.com/questions/12447875/keyboard-and-cursor-show-but-i-cant-type-inside -uitextfields-and-uitextviews/12504575#12504575 –
谢谢。我曾看过这个,但我的观点不是应用程序的主窗口,所以我看不出如何将其应用于我的情况。最初,我认为这是一个代表问题,但我意识到这是UISearchbar和键盘之间的联系。没有什么会从键盘到搜索栏。 – johnz
我刚刚发现的另一点信息:搜索栏在iPhone上运行应用程序时运行,但不在iPad上运行。不同的是,在iPad上,这个特定的视图在popover中变得流行起来,而在iPad上则不然。在这两个视图都由UINavigationController控制。所以这必须与在popover中运行导航控制器有关,但我想不出为什么会有所作为。 – johnz