如果范围标题为“全部”,是否有办法仅禁用搜索字段,但是当您点击其他范围标题时启用它?
我尝试设置searchBar.isUserInteractionEnabled = false
,但它也会禁用范围标题栏。因此,我无法与范围标题进行交互以重新启用搜索字段。
提前致谢。
答案 0 :(得分:2)
没有公共API可以启用或禁用搜索栏中的文本字段。但是,你有一个解决方案。
当" All"选择范围按钮,将搜索栏重新作为第一响应者。这应该解雇键盘。将text
属性设置为空字符串。
实施searchBarShouldBeginEditing
委托方法。如果"全部"则返回false
选择范围按钮,其他人true
。这将阻止搜索字段变为活动状态一次"全部"已被选中。
您可以根据需要更新搜索栏prompt
,以帮助用户了解为什么在他们尝试键入搜索栏时没有任何反应,而所有"全部"被选中。