ScrollView 内に fills_parent という TableLayout があります。ソフト キーボードが表示され、最後のいくつかの EditText が隠れている場合を除いて、すべてが完全に機能します。技術的には、キーボードが表示されていないと画面がすべてのコンテンツに収まるため、画面を下にスクロールすることはできません。キーボードが表示されているときに、下にスクロールして残りの EditText を表示することはできず、キーボードを非表示にし、ユーザーが選択して下の EditText の 1 つに値を入力できるようにします。thisを使用して、私は試しました:
Window.SetSoftInputMode((int)SoftInput.AdjustPan);
と
Window.SetSoftInputMode((int)SoftInput.AdjustResize);
と
[Activity(WindowSoftInputMode = SoftInput.AdjustPan)]
と
[Activity(WindowSoftInputMode = SoftInput.AdjustResize)]
と
Window.SetFlags(WindowManagerFlags.AltFocusableIm, WindowManagerFlags.AltFocusableIm);
それは、キーボードがまったく上がらないようにしただけです。これは私が必要とするものではありません。表示されているときにキーボードの上に表示されるようにコンテンツを調整して、キーボードが表示された状態で一番下の EditText までスクロールし続けることができるようにする必要があります。非常に長い xml からの抜粋。テーブルはコードで動的に設定されます。
<ScrollView
android:id="@+id/peScroll"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@id/security">
<TableLayout
android:id="@+id/poweredEquip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:stretchColumns="*"
android:gravity="center"
android:padding="10dip">
<TableRow
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@drawable/tab_bg_unselected"
android:gravity="center">
<TextView
android:text="Serial"
android:textSize="15sp"
android:textColor="@android:color/black"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:ellipsize="middle"
android:gravity="center"
android:layout_column="1"/>
</TableRow>
</TableLayout>
</ScrollView>