UISearchBarがあり、検索マーカー(拡大鏡アイコン)を削除して、代わりにテキストを配置したい
質問する
13330 次
4 に答える
15
UIAppearance メソッドを使用できます
スイフト3.0
UISearchBar.appearance().setImage(UIImage(named: "image_name"), for: .search, state: .normal)
Objective-c
[[UISearchBar appearance] setImage:[UIImage imageNamed:@"image_name"] forSearchBarIcon:UISearchBarIconSearch state:UIControlStateNormal];
于 2015-10-10T09:04:30.113 に答える
2
もう少し承認された API フレンドリーな方法は、代わりに通常の UITextField を使用することです。次のコードを使用して、UITextField 内にラベルを追加します (虫眼鏡を削除したい場合、とにかく検索ボックスの魅力は何ですか?)。
UILabel *searchFieldLeftLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 0, 32, 15)];
searchFieldLeftLabel.text = @"find:";
searchFieldLeftLabel.placeholder = @"e.g. wings, Boathouse";
searchFieldLeftLabel.font = [UIFont systemFontOfSize:14];
searchFieldLeftLabel.textColor = [UIColor grayColor];
self.searchFieldLeftLabel.leftView = locationSearchFieldLeftLabel;
[searchFieldLeftLabel release];
結果は、次のような見栄えの良いテキスト ボックスです。
テキストの入力を開始すると、プレースホルダーが置き換えられますが、ラベルは残ります。
于 2012-05-09T10:42:33.217 に答える
1
この投稿を参照してくださいUISearchbar の左側の画像を削除します。拡大鏡を変更または削除するパブリック API はありません。UITextField を使用する必要があります。
于 2012-05-09T10:29:25.450 に答える