【问题标题】:Keep search bar cancel button tint color even when keyboard dismiss即使在键盘关闭时也保持搜索栏取消按钮的颜色
【发布时间】:2018-07-15 02:36:07
【问题描述】:

我的导航栏中有一个带有取消按钮的搜索栏,当键盘关闭时,我的取消按钮会改变颜色并变为非活动状态,直到我再次单击它。有没有办法让我的取消按钮状态每次都保持不变?

这是在我关闭键盘之前

这是在我关闭键盘之后

我希望我的取消按钮在键盘关闭前后保持不变。感谢您的帮助!

【问题讨论】:

  • 从用户体验的角度来看,这听起来不是一个非常直观的行为。如果搜索栏条目未处于活动状态,则无法取消它,因此它显示为禁用状态。

标签: ios swift uisearchbar uisearchcontroller


【解决方案1】:

我认为你不能,我这样做的方式是在右侧制作按钮宽度,当用户按下搜索栏时,按钮宽度会改变,即使用户搜索并关闭键盘它仍然处于活动状态,但按下时宽度会归零,搜索栏结束编辑 然后当按下取消时,只需使其宽度为零

实现:

1-在标签栏右侧添加一个按钮-用于按钮的约束:您想要的底部约束,宽度为零,您想要的高度,尾随也为零。

2-用于标签栏约束:尾随必须为零,其余随你喜欢

3- 不要忘记使用UISearchBarDelegate

4-in viewdidload set yoursearchbar.delegate = self

5-

 func searchBarTextDidBeginEditing(_ searchBar: UISearchBar) {
        //wcha.hey = hello.text!
        this will fire when tuching search bar for first time
        self.allview.layoutIfNeeded()
             yourcancelbutton.constant = your desired width

        }

6-

 @IBAction func yourcancelbutton(_ sender: Any) {

         yourbutton.constant = 0
        self.view.endEditing(true)
    }

【讨论】:

  • 你能告诉我你是怎么做到的吗?会有很大帮助
  • 嘿,如果您有任何其他问题,请随时提问
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-07-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-23
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多