私はEditTextとButtonをRelativeLayoutの下部に固定しています。Android EditTextはRelativeLayoutの下部に固定されており、WVGAで消滅します
EditTextをクリックすると、ソフトキーボードが開きますが、EditTextとButtonはディスプレイされますが、非常に奇妙な方法です。あなたがタイプすることができるので、実際にそこにあります。そして、ボタンがキーボードの真上にあるべき場所を押して、タッチに反応しますが、実際に見ることはできません。
理由はわかりませんが、これは画面の解像度に固有のようですか?それは私のNexusOneで壊れていましたが、私のLS670で動作します。 WVGA800のエミュレータで壊れたが、HVGAで動作する。
私ははるかに複雑layout.xmlがあったが、私はこの単純な場合にそれを煮詰めるために管理:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/test_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<EditText
android:id="@+id/test_text"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:layout_toLeftOf="@+id/test_textButton"
/>
<Button
android:id="@id/test_textButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_alignParentRight="true"
android:text="OK"/>
</RelativeLayout>
はEDIT:
ので、より多くの私はこれに見て、ために表示されますレイアウトエンジンのバグ。私がEditTextをクリックすると、キーボードがそれをカバーする前に、実際にEditTextがアニメーション化されているのを見ることができます。それだけではそれを十分に高くすることはできません。これは、ワイドスクリーンの解像度と関係があるように見えます。エディットテキストに100dipの余白を置くと、それはキーボードの上を突き抜けて見えるだけで、200dipはほとんどの場合それを表示します。もう一度、これはHVGAの画面でうまく動作します。キーボードの下に隠れていたボタンは、まだキーボードの上の私のタッチに応答していましたが、それは奇妙でした。
自己回答に十分なポイントがありませんが、問題が見つかりました: 問題は、アクティビティのデフォルトのsoftInputModeにバグがあるようでした(おそらくワイドスクリーンに関連しています)。それを "adjustResize"に切り替えると、期待どおりに動作します! – Paul