UISearchBarファーストレスポンダビューロードを作ります
-
20-09-2019 - |
質問
ビューの負荷が私はキーボードが表示されていると、彼らはすぐに自分のクエリを入力し始めることができるように検索バーがすぐにファーストレスポンダになっていたいとき
私は、シンプルUIViewController
とUISearchBar
を持っています。私は運なしで以下のようなviewWillAppear
でそれをやってみました。
- (void)viewWillAppear:(BOOL)animated
{
[productSearchBar becomeFirstResponder];
[super viewWillAppear:animated];
}
私はbecomeFirstResponder
にUISearchBar
を呼び出すべきであるか、私は完全に何かを呼び出すべきである他の場所はありますか?
解決
-viewDidAppear
するために、これを移動し、それは問題ないはずです。 (あなたが注意として)-becomeFirstResponder
は、キーボードをプルアップし、あなたが画面上にしている前に、あなたはアニメーションを行うべきではありません。あなたは奇妙な相互作用を得ることができます。
、その後、ほぼ確実productSearchBar
IBOutletであり、あなたが実際にInterface BuilderでUISearchBar
にそれを結ぶために忘れてしまいました。これは、UIに「何も起こらない」ための#1の理由です。
あなたはアイバーズこのようにアクセスすべきではないことに注意してください。あなたはそれ財産作り、self.productSearchBar
のみを参照する必要があります。 Appleはついに自分のメモリ管理では、このの正しい説明を掲載していますペン先ののオブジェクト。アクセサまたは-dealloc
の外であなたのアイバーズにアクセスすることはありません。このルールは、あなたのデバッグの多くの時間を節約します。
所属していません StackOverflow