UISearchBarの内部でUITextFieldの位置を変更する方法はありますか? 私はUITextFieldをUISearchBar内で少し動かしたいと思います。UISearchBarでUITextFieldの位置を変更するにはどうすればよいですか?
6
A
答えて
12
UITextFieldアプローチは、おそらくUISearchBarオブジェクトのリビルドのためには機能していません。 UITextFieldがスクリーン上に提示されると、UITextFieldのサイズが変更され、UITextField上のすべての操作が無効になります。
しかし、私はUISearchBarがsetContentInset:
メソッド(iOS 5.0.1でテスト済み)に応答することを発見しました。囲みビューからの挿入距離を調整します。
この結果NSInvocationを含む洗練されたアプローチで:
if([aSearchBar respondsToSelector:@selector(setContentInset:)])
{
SEL aSelector = NSSelectorFromString(@"setContentInset:");
NSInvocation *inv = [NSInvocation invocationWithMethodSignature:[aSearchBar methodSignatureForSelector:aSelector]];
[inv setSelector:aSelector];
[inv setTarget:aSearchBar];
UIEdgeInsets anInsets = UIEdgeInsetsMake(5, 0, 5, 35);
[inv setArgument:&anInsets atIndex:2]; //arguments 0 and 1 are self and _cmd respectively, automatically set by NSInvocation
[inv invoke];
}
上記のコードはCGRectを使用UISearchBar(有効UITextFieldの)のcontentInset
のサイズを変更は、anInsets
パラメータで示さ。親if文(respondsToSelector:
)は、新しいバージョンのiOSでこの動作が変更されないようにします。
はSwift3とiOS10のための更新:
if searchBar.responds(to: Selector("setContentInset:")) {
let aSelector = Selector("setContentInset:")
let anInset = UIEdgeInsetsMake(5, 0, 5, 35)
searchBar.perform(aSelector, with: anInset)
}
関連する問題
- 1. xamarinフォームで手動でエントリのカーソル位置を変更するにはどうすればよいですか?
- 2. コードでAccessでフォームの位置を変更するにはどうすればよいですか?
- 3. Drupalでフッターの位置を変更するにはどうすればよいですか?
- 4. UITableViewでテキストの位置を変更するにはどうすればよいですか?
- 5. OpenGL/Glutでマウスカーソルの位置を変更するにはどうすればよいですか?
- 6. Android - タブでテキストと画像のデフォルト位置を変更するにはどうすればよいですか?
- 7. Bing Maps 7でナビゲーションバーの位置を変更するにはどうすればよいですか?
- 8. 線形レイアウトでビューの位置を変更するにはどうすればよいですか?
- 9. Delphiでヘルプポップアップウィンドウの位置を変更するにはどうすればよいですか?
- 10. IOS 7のUISearchBarで拡大鏡アイコンの位置や非表示を変更するにはどうすればよいですか?
- 11. tabularnewlineの後にコンテンツの垂直位置を変更するにはどうすればよいですか?
- 12. ヘッドの位置を別のフォルダに変更するにはどうすればよいですか?
- 13. 実行時にdivの位置を変更するにはどうすればよいですか?
- 14. フォームにグループボックスの位置を変更するにはどうすればよいですか?
- 15. jquery UIスライダ:スライダの位置をプログラム的に変更するにはどうすればよいですか?
- 16. jQueryを使用してdivの位置を変更するにはどうすればよいですか?
- 17. QtCreatorの[ローカルとウォッチャー]パネルの位置を変更するにはどうすればよいですか?
- 18. nsisのショートカットの開始位置を変更するにはどうすればよいですか?
- 19. Perl Tkxのメインウィンドウの位置を変更するにはどうすればよいですか?
- 20. キューのアイテムの位置を変更するにはどうすればよいですか?
- 21. jqueryの追加divの位置を変更するにはどうすればよいですか?
- 22. UISearchBarを四角形から四角形に変更するにはどうすればよいですか?
- 23. キャンバス要素の位置を変更するにはどうすればよいですか?
- 24. Venn3:サークルとラベルの位置を変更するにはどうすればよいですか?
- 25. Sharethis共有ボタンの位置を変更するにはどうすればよいですか?
- 26. Android:ExpandableListViewインジケータの位置を変更するにはどうすればよいですか?
- 27. ペア()の軸位置を変更するにはどうすればよいですか?
- 28. SKNodeの位置を変更せずにSKNodeを回転するにはどうすればいいですか?
- 29. NSPopoverの矢印の頭の位置を変更するにはどうすればいいですか?
- 30. SecondViewControllerからFirstViewControllerのUITextFieldを変更するにはどうすればよいですか?
私はあなたがあなた自身の検索バーを実装するために持っていると思います。 – Legolas