gpt4 book ai didi

ios - 将带有图像的按钮添加到 UISearchBar

转载 作者:行者123 更新时间:2023-11-28 09:36:04 26 4
gpt4 key购买 nike

我使用自定义 UISearchBar 并覆盖函数“draw”:

class MySearchBar: UISearchBar {
override func draw(_ rect: CGRect) {
if let index = indexOfSearchFieldInSubviews() {
self.showsCancelButton = false
searchField.clearButtonMode = .never
}
}

func indexOfSearchFieldInSubviews() -> Int! {
var index: Int!
let searchBarView = subviews[0]
for i in 0 ..< searchBarView.subviews.count {
if searchBarView.subviews[i].isKind(of: UITextField.self) {
index = i
break
}
}

return index
}
}

如何在 UISearchBar 中添加带有红色图像的按钮?

custom UISearchBar

最佳答案

UISearchBar 只是UIView 的子类。我想您可以像添加任何其他 View 一样添加 UIButton

但是,您要添加按钮的位置已经有一个按钮。 UISearchBar 带有一个书签按钮,您可以在该按钮上设置自定义图像(通过调用 setImage(someImage, for: .bookmark, state: .normal))。此按钮有一个 UISearchBarDelegate 方法,您可以从中响应 touch-up inside 事件。

func searchBarBookmarkButtonClicked(_ searchBar: UISearchBar)
{
print("The button on the right side of my search bar was pressed")
}

我发现这种方法比尝试猜测自定义按钮的适当大小和位置更清晰,“书签”用词不当。

我还建议不要覆盖 draw(_ rect:) 进行初始化和属性设置。覆盖它会产生性能成本,并且只需要自定义绘图代码。

关于ios - 将带有图像的按钮添加到 UISearchBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42003186/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com