问题描述
||
我在UIToolbar中有一个与UISearchdisplayController绑定在一起的UISearchBar。我希望UISearchdisplayController \的结果显示在UISearchBar下方的弹出框中,但我对此遇到了麻烦。我非常确定这是因为没有设置contentController,但找不到在Content Builder中为在Interface Builder中创建的UISearchdisplayController分配contentController的位置。我已经尝试过以编程方式进行创建,并调用initwithsearchbar:和contentscontroller:,但是我认为,只有当我不想以编程方式创建搜索栏和控制器时,该方法才会起作用,任何帮助都很棒!
解决方法
使得
UISearchDisplayController
只能与另一个UIViewController
(如您提到的contentsController
)一起使用。尽管它可以与任何ѭ1一起使用,但主要用途(也是最不痛苦的用途)旨在与ѭ4一起使用。
ѭ2应该被认为“负责管理要搜索的原始内容”。如果控制器未管理项目集合,则无需搜索任何内容。 UITableView
是管理多个项目的主要标准控制器。
如果您的“ 7”在“ 8”中,则工具栏可能位于由“ 1”管理的主视图中。如果您在运行时以编程方式访问只读的contentsController
值,那么这就是我希望您能找到的。
当您将搜索控制器放到笔尖中时,Xcode4(可能还有InterfaceBuilder)会创建许多连接。他们现在指向那个“ 1”(文件的所有者?),并期望它在“ 12”和“ 13”协议中实现某些完全可选的方法。
您可能想要实施
- (void)searchBar:(UISearchBar *)searchBar
textDidChange:(NSString *)searchText {
// called when text changes (including clear)
NSLog(@\"[%@ %@]\",NSStringFromClass([self class]),NSStringFromSelector(_cmd));
}
在谜题ѭ2上并在每次键入文本时执行风选?
(祝好运)
我怀疑您可能根本不想在组合中使用ѭ0。