I have a view with some fields (name, email, password, register button) :
<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>
When I focus an edittext field, the keyboard appears and is overlaying the lower fields on the view. So I can't see them when the keyboard is present. I would like to know how to make the view scrollable so that I can see the lower fields. And additionally, how to make the view scroll automatically to make the focused field visible.
You need to include android:windowSoftInputMode="adjustResize"
attribute for your activity in the AndroidManifest.xml file - and then Android should do the resizing for you automatically:
<activity android:name="..."
...
android:windowSoftInputMode="adjustResize">
...
/>
I have created simple xml file.
step 1. you can scroll when key-pad is appeared.
step 2. when you click on Text-Field it will come on Focus/above keypad.
<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>
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With