Nav*_*nga 4 uisearchbar uisearchdisplaycontroller ios
我想在UISearchbar中添加一个按钮(bar),在UISearchbar外面添加另一个按钮(bar),如图所示.对此有任何帮助表示赞赏.
在此先感谢Naveen
rdu*_*and 19
正如@NicolasMiari在评论中所述:
这不再适用于iOS 7后,因为书签按钮会在条形图的输入文本字段中呈现.
对于搜索栏内的按钮,您可以使用书签按钮并更改其图像.您只需转到故事板(如果使用的话),选择搜索栏,然后激活"显示书签按钮"选项.然后,在您的代码中,设置您想要的图像:
[_searchBar setImage:[UIImage imageNamed:@"My-Custom-Image"] forSearchBarIcon:UISearchBarIconBookmark state:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)
您可以使用以下委托方法检测此按钮上的单击:
- (void)searchBarBookmarkButtonClicked:(UISearchBar *)searchBar {
NSLog(@"click");
}
Run Code Online (Sandbox Code Playgroud)
Str*_*lar 14
斯威夫特4
class ViewController: UIViewController {
var searchController = UISearchController(searchResultsController: nil)
override func viewDidLoad() {
searchController.delegate = self
searchController.searchBar.delegate = self
searchController.searchBar.showsBookmarkButton = true
searchController.searchBar.setImage(UIImage(named: "myImage"), for: .bookmark, state: .normal)
}
}
extension ViewController: UISearchBarDelegate {
func searchBarBookmarkButtonClicked(_ searchBar: UISearchBar) {
print("click")
}
}
Run Code Online (Sandbox Code Playgroud)
在 UISearchBar 中添加按钮的最快方法是像这样更新书签按钮:
[self.searchDisplayController.searchBar setImage:[UIImage imageNamed:@"customImage.png"] forSearchBarIcon:UISearchBarIconBookmark state:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)
如果需要调整偏移量,
[self.searchDisplayController.searchBar setPositionAdjustment:UIOffsetMake(-10, 0) forSearchBarIcon:UISearchBarIconBookmark];
Run Code Online (Sandbox Code Playgroud)
不要忘记激活故事板中的“显示书签按钮”选项。