UIsearchBar iOS11 像之前的版本那樣沒有內容居中 有內容居左

@property(nonatomic,assign)CGFloatwidth;

//判斷版本

if(@available(iOS11.0, *)){

UITextField *textField = [self.searchBar valueForKey:@"searchField"];

[textField sizeToFit];

//記錄一下這個時候的寬度

_width= textField.frame.size.width;

[_searchBar setPositionAdjustment:UIOffsetMake((_searchBar.width-_width)/2.0,0)forSearchBarIcon:UISearchBarIconSearch];

}

然后在代理方法 searchBarTextDidBeginEditing:(UISearchBar*)searchBar 調整位置

if(@available(iOS11.0, *)){

[_searchBar setPositionAdjustment:UIOffsetMake(0,0)forSearchBarIcon:UISearchBarIconSearch];

}

結束的方法? searchBarTextDidEndEditing:(UISearchBar*)searchBar 判斷是否有內容

if(@available(iOS11.0, *)){

if(!_searchBar.text.length) {

[_searchBar setPositionAdjustment:UIOffsetMake((_searchBar.width-_width)/2.0,0) forSearchBarIcon:UISearchBarIconSearch];

}

}

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容