![](/img/trans.png)
[英]UISearchDisplayController - Method for when cancel button is clicked
[英]resize uisearchdisplaycontroller width when click cancel button
單擊取消時,我想更改uisearchDisplaycontroller的寬度。 我添加我的代碼以供參考...
mySearchBar = [[UISearchBar alloc]init];
[mySearchBar setDelegate:self];
resName_search = [[UISearchDisplayController alloc] initWithSearchBar:mySearchBar contentsController:self];
resName_search.delegate = self;
resName_search.searchResultsDataSource = self;
resName_search.searchResultsDelegate = self;
[self.view addSubview:resName_search.searchBar];
[resName_search.searchBar setFrame:CGRectMake(0.0, barOriginY+79.0, 106.0, 40.0)];
它顯示良好...但是當我搜索項目然后單擊取消按鈕...時,它不會調整大小..
-(BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar
{
btnCuisine.hidden =YES;
btnService.hidden =YES;
imgDropDwn1.hidden =YES;
imgDropDwn2.hidden =YES;
[resName_search.searchBar setShowsCancelButton:YES animated:NO];
[resName_search.searchBar setFrame:CGRectMake(0.0, barOriginY+79.0, 320.0, 40.0)];
return YES;
}
-(void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
NSLog(@"size changed 106.0");
[resName_search.searchBar setShowsCancelButton:NO animated:NO];
[resName_search.searchBar setFrame:CGRectMake(0.0, barOriginY+79.0, 106.0, 40.0)];
btnCuisine.hidden =NO;
btnService.hidden =NO;
imgDropDwn1.hidden =NO;
imgDropDwn2.hidden =NO;
}
我也為該問題添加圖像鏈接,請參閱解決我的問題圖像鏈接
只需將self.searchDisplayController.searchBar.translatesAutoresizingMaskIntoConstraints設置為YES,並將Active設置為NO。 但是我認為將AutoresizingMaskIntoConstraints轉換為YES並不重要...
-(void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
{
NSLog(@"size changed 106.0");
self.searchDisplayController.searchBar.translatesAutoresizingMaskIntoConstraints = YES;
[self.searchDisplayController setActive:NO animated:YES];
[resName_search.searchBar setShowsCancelButton:NO animated:NO];
[resName_search.searchBar setFrame:CGRectMake(0.0, barOriginY+79.0, 106.0, 40.0)];
// mySearchBar.frame =CGRectMake(0.0, barOriginY+79.0, 106.0, 40.0);
btnCuisine.hidden =NO;
btnService.hidden =NO;
imgDropDwn1.hidden =NO;
imgDropDwn2.hidden =NO;
}
在搜索搜索欄時點擊表格背景而不調整大小,因此添加searchDisplayControllerDidEndSearch委托
-(void)searchDisplayControllerDidEndSearch:(UISearchDisplayController *)controller
{
NSLog(@"size changed 106.0");
// [resName_search.searchBar removeFromSuperview];
self.searchDisplayController.searchBar.translatesAutoresizingMaskIntoConstraints = YES;
[self.searchDisplayController setActive:NO animated:YES];
[resName_search.searchBar setShowsCancelButton:NO animated:NO];
// [self.view addSubview:resName_search.searchBar];
[resName_search.searchBar setFrame:CGRectMake(0.0, barOriginY+79.0, 106.0, 40.0)];
// mySearchBar.frame =CGRectMake(0.0, barOriginY+79.0, 106.0, 40.0);
btnCuisine.hidden =NO;
btnService.hidden =NO;
imgDropDwn1.hidden =NO;
imgDropDwn2.hidden =NO;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.