UISearchBar禁用取消按钮的自动禁用
我已经将UISearchBar实现到一个表视图中,除了一件小事之外几乎所有东西都在工作:当我输入文本然后按键盘上的搜索按钮时,键盘消失,搜索结果是表中显示的唯一项目,文本保留在UISearchBar中,但取消按钮被禁用。
我一直试图让我的列表接近Apple联系人应用程序的功能,当你在该应用程序中按搜索时,它不会禁用取消按钮。
当我查看UISearchBar头文件时,我注意到_searchBarFlags结构下的autoDisableCancelButton标志,但它是私有的。
设置UISearchBar时是否有一些我遗漏的东西?
没有找到相关结果
已邀请:
10 个回复
娜拐赐巫潭
凄嘛姥
耐扫鹤胶鞭
您应该使用第二个,如果Apple将在后台更改它,它不会使您的应用程序崩溃。 BTW我测试它从iOS 4.0到8.2并没有变化,我也在我的商店批准的应用程序中使用它没有任何问题。
超可林
妊辽剁茧
盛梯獭八搽
,并且激活取消按钮,键盘显示和最近搜索屏幕。滚动最近的搜索屏幕,它会隐藏键盘,但会保持取消按钮激活。 这是我的工作代码:
我通过在我的表视图中设置断点来达到此解决方案的
。我看着我的
并露出了它的子视图。它总是只有一个,类型为
(我的变量
)。 然后,
持有一个名为
的
,我注意到最后一个元素是第三个,类型为
,而不是公共API。所以我开始使用键值编码。我检查了
是否响应
,幸运的是,确实如此。所以我把房产设置为
。事实证明,
是取消按钮。 如果Apple决定改变
的内部实施,这肯定会破裂,但到底是什么。它现在有效。
倾坞髓
磁辫覆氓
这个答案基于David Douglas的解决方案。
眠皇
。
靛取糕奖穿
现在用于: