2011-07-11 2 views
0

こんにちは、UISearchBarにあるクリアボタン(Xボタン)を削除できますか?UISearchBarのクリアボタン

私はそれの代理人を見つけませんでした。キャンセルボタンが1つあります。

おかげ

答えて

5

あなたは直接UISearchBarclearButtonにアクセスすることはできません。あなたはのUITextFieldを見つけ、そしてUITextFieldViewModeNeverにそのclearButtonModeプロパティを設定するUISearchBarのサブビューをループする必要があります。

注:今後のiOSアップデートによってUISearchBarの実装が変更された場合、これが機能しない可能性があるため、これは永続的な解決策ではありません。 searchBarTextDidBeginEditing方法 -

+0

ありがとうございます。 – Swapnil

+0

@iSwap、ようこそ! (searchBar.subviewsでのUIView *サブビュー)用 – EmptyStack

+0

\t {\t \t IF([サブビューconformsToProtocol:@protocol(UITextInputTraits)]) \t \t { \t \t \t [(UITextFieldの*)サブビューsetClearButtonMode:UITextFieldViewModeNever]。 \t \t} \t} – Swapnil

1

あなたが検索バー

UITextField *textField = [searchBar valueForKey:@"_searchField"]; 
textField.clearButtonMode = UITextFieldViewModeNever; 

使用中のTextFieldを取得する必要があります。

- (void)searchBarTextDidBeginEditing:(UISearchBar *)searchBar 
{ 

UITextField *textField = [searchBar valueForKey:@"_searchField"]; 
textField.clearButtonMode = UITextFieldViewModeNever; 


}