删除UISearchBar中的清除button
我想从UISearchBar中删除清除button(灰色x)。 我试图像这个答案中所描述的那样做 ,但它不起作用。
我将答案和下面的注释中的Objective-C代码翻译成以下Swift代码:
for subview in searchBar.subviews { configureSearchBarView(subview as UIView) } func configureSearchBarView(view: UIView) { for subview in view.subviews { self.configureSearchBarView(subview as UIView) } if subview.conformsToProtocol(UITextInputTraits) { var clearView = view as UITextField clearView.clearButtonMode = UITextFieldViewMode.Never } }
不幸的是,这并没有删除清除button。
另外一个答案build议与appearanceWhenContainedIn
一起工作,但是这个方法似乎并没有在Swift中实现。
有任何想法吗?
我find了解决scheme。 可以使用自定义图像交换清除button:
UISearchBar.appearance().setImage(UIImage(named: "emptyImg"), forSearchBarIcon: UISearchBarIcon.Clear, state: UIControlState.Normal) UISearchBar.appearance().setImage(UIImage(named: "emptyImg"), forSearchBarIcon: UISearchBarIcon.Clear, state: UIControlState.Highlighted)
emptyImg
是一个包含一个白色像素的png。 在这个答案中find