3

私はIOSでキーボードに関するテキストフィールドを保持する方法を理解しようとしています。stackoverflowで別のコードを試しましたが、完全に機能するものはありません。テキストフィールドがキーボードの上にあり、フィールドをクリックしても、上に移動しません。キーボードの上にテキストフィールドを常に表示するにはどうすればよいですか?ありがとう!

4

1 に答える 1

1

lakesh のリンクは、優れたリソースです。

この状況を処理するには、基本的に 2 つの方法があります。

方法 1:

ビューを a 内にカプセル化できます。UIScrollViewキーボードがポップアップしたら、キーボードが占有するスペースを考慮して、ビュー全体を同じ距離だけ上にスクロールする必要があります。

方法 2:

UIView現在の内部の最終的な親をUIViewController取得し、そのフレームを (理想的にはアニメーションで) 変更して、画面の上部から移動し、キーボードに道を譲ります。

一般的なガイドとして、方法 1 が推奨される方法です。これは、UIScrollView上にスクロールすることで「より高い」UI にアクセスできるためです (たとえば、複数のフィールドを持つフォームを考えてください)。方法 2 では、ユーザーは最初にキーボードを閉じないと、ビュー内の他の要素に戻ることができません。もちろん、キーボード入力を受け付けている間はビューの残りの部分を見る必要がないかもしれませんが、その決定はあなた次第です。

于 2013-01-17T05:16:19.947 に答える