私はIOSでキーボードに関するテキストフィールドを保持する方法を理解しようとしています。stackoverflowで別のコードを試しましたが、完全に機能するものはありません。テキストフィールドがキーボードの上にあり、フィールドをクリックしても、上に移動しません。キーボードの上にテキストフィールドを常に表示するにはどうすればよいですか?ありがとう!
質問する
1899 次
1 に答える
1
lakesh のリンクは、優れたリソースです。
この状況を処理するには、基本的に 2 つの方法があります。
方法 1:
ビューを a 内にカプセル化できます。UIScrollView
キーボードがポップアップしたら、キーボードが占有するスペースを考慮して、ビュー全体を同じ距離だけ上にスクロールする必要があります。
方法 2:
UIView
現在の内部の最終的な親をUIViewController
取得し、そのフレームを (理想的にはアニメーションで) 変更して、画面の上部から移動し、キーボードに道を譲ります。
一般的なガイドとして、方法 1 が推奨される方法です。これは、UIScrollView
上にスクロールすることで「より高い」UI にアクセスできるためです (たとえば、複数のフィールドを持つフォームを考えてください)。方法 2 では、ユーザーは最初にキーボードを閉じないと、ビュー内の他の要素に戻ることができません。もちろん、キーボード入力を受け付けている間はビューの残りの部分を見る必要がないかもしれませんが、その決定はあなた次第です。
于 2013-01-17T05:16:19.947 に答える