I've got a layout with some views, from which one is an EditText. The layout easily fits on one page, BUT, when the soft keyboard is out, the layout doesn't scroll. Here's a recap of my layout:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/background" >
<ScrollView
android:id="@+id/ScrollView1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<CheckBox/>
<TextView/>
<LinearLayout>
<EditText>
<requestFocus />
</EditText>
</LinearLayout>
<TextView/>
<LinearLayout>
<Spinner/>
</LinearLayout>
</LinearLayout>
</ScrollView>
<Button
android:layout_alignParentBottom="true" />
</RelativeLayout>
And in my manifest I have declared the attribute:
android:windowSoftInputMode="adjustResize|stateHidden"
Does anyone know why it doesn't work and how to make sure it does work?
Thanks in advance!
My problem was with a HorizontalScrollView. In my case I had to set HorizontalScrollView to:
And remove:
In the AndroidManifest.xml the activity is set to:
I hope this helps anyone comming across this weird bug.
I had the same problem and I checked my activity in the manifest, and the reason why it wasn't working is because I didn't use this property:
Now it works great and no need to do additional anchors.
Okay, apparently the ScrollView's
android:layout_height
mustn't be set towrap_content
. I set it tomatch_parent
and set theandroid:layout_above
to the button on the bottom of the page.Don't ask me why, but this fixed the issue.
Try to set ScrollView as your parent layout. It works like charm for me!
try this In android manifest ..
In my case, nothing of the above worked.
I had
item name="android:windowTranslucentStatus">true</item>
in my theme. And it was fixed by settingandroid:fitsSystemWindows="true"
in the parent layout where is my scrollview.