私はいくつかのフィールド(名前、電子メール、パスワード、登録ボタン)を持つビューを持っています:
<ScrollView
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent" >
<ViewFlipper
Android:id="@+id/viewflipper"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content" >
//Layouts
</ViewFlipper>
</ScrollView>
Edittextフィールドにフォーカスを合わせると、キーボードが表示され、ビューの下のフィールドがオーバーレイされます。そのため、キーボードが存在するときにそれらを見ることができません。下のフィールドが見えるようにビューをスクロール可能にする方法を教えてください。さらに、ビューを自動的にスクロールして、フォーカスされたフィールドを表示する方法。
AndroidManifest.xmlファイルにアクティビティのAndroid:windowSoftInputMode="adjustResize"
属性を含める必要があります。その後、Androidで自動的にサイズ変更が行われます。
<activity Android:name="..."
...
Android:windowSoftInputMode="adjustResize">
...
/>
私は簡単なxmlファイルを作成しました。これがあなたが探しているものであることを願っています。
ステップ1。キーパッドが表示されているときにスクロールできます。
ステップ2。テキストフィールドをクリックすると、フォーカス/キーパッドの上に表示されます。
<ScrollView Android:id="@+id/ScrollView01"
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:fillViewport="true"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent">
<LinearLayout
Android:orientation="vertical"
Android:layout_width="fill_parent"
Android:weightSum="1.0"
Android:layout_height="match_parent"
Android:focusable="true"
Android:focusableInTouchMode="true"
Android:id="@+id/l_layout">
<EditText
Android:layout_height="wrap_content"
Android:layout_width="match_parent"
Android:id="@+id/editText1"
Android:layout_marginTop="100dp">
<requestFocus></requestFocus>
</EditText>
<EditText
Android:layout_height="wrap_content"
Android:layout_width="match_parent"
Android:id="@+id/editText2"
Android:layout_marginTop="100dp">
</EditText>
</LinearLayout>
</ScrollView>
私の場合、@ Aleks Gソリューションが機能していませんでした。だから私は私の問題を解決しました
<RelativeLayout
xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto"
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
>
<ScrollView
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:id="@+id/registration_scroll_view"
Android:layout_alignParentTop="true"
Android:layout_above="@+id/btn_register_submit"
>
<LinearLayout
Android:layout_width="match_parent"
Android:layout_height="wrap_content"
Android:gravity="center"
Android:orientation="vertical">
<!--This comment will be replaced
by your focusable views-->
</LinearLayout>
</ScrollView>
<Button
Android:id="@+id/btn_register_submit"
Android:layout_width="match_parent"
Android:layout_height="50dp"
Android:layout_alignParentBottom="true"
Android:background="@drawable/form_action_button_green"
Android:gravity="center"
Android:text="@string/submit"
/>
</RelativeLayout>
これを試しましたか:
<ScrollView
xmlns:Android="http://schemas.Android.com/apk/res/Android"
Android:layout_width="fill_parent"
Android:layout_height="fill_parent" >
<ViewFlipper
Android:id="@+id/viewflipper"
Android:layout_width="fill_parent"
Android:layout_height="wrap_content" >
<ScrollView
Android:layout_width="fill_parent"
Android:layout_height="fill_parent"
Android:id="@+id/scroll_container">
//Layouts
</ScrollView>
</ViewFlipper>