0

画面の下部近くにテキスト フィールドがあります。キーボードが表示されると、テキスト フィールドが覆われます。iPhone Keyboard Covers UITextFieldのコードを使用して、この問題を解決しました。

ただし、そのコードは、ビューを上下に移動する量をハードコードしています。プログラムでテキスト フィールドの座標を取得して、どれだけ上下に移動する必要があるかを判断できる方法はありますか? このテキスト フィールドを別の場所に移動することにした場合でも、コードを変更する必要がないため、これは有益です。ありがとうございました。

4

2 に答える 2

3

frameUITextField (または UIView の任意のサブクラス) でプロパティを使用します。返された は、CGFloat として x または y 座標を持つものへのCGRectアクセスを提供します。origin

CGFloat y = textField.frame.origin.y;
于 2012-07-01T22:26:11.623 に答える
0

画面の下部からテキスト フィールドまでの距離は、キーボードの高さ以上にする必要があります。

float distanceFromBottom = txtField.window.frame.size.height - txtField.frame.origin.y - txtField.frame.size.height;
float deltaY = keyboardHeight - distanceFromBottom;

テキスト フィールドを だけ上に移動する必要がありますdeltaY

于 2012-07-01T22:41:11.667 に答える