Scrollview pushes up when the soft keyboard of Android is displayed.

I have an editext inside scrollView. When editext gains focus and a soft keyboard is displayed, ScrollView automatically extends.

I tried

android:windowSoftInputMode="adjustResize" android:windowSoftInputMode="adjustPan"

 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/sign_in_or_sign_up_bg" > <RelativeLayout android:id="@+id/headerlayout" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:background="@drawable/headerbox_title" > <ImageButton android:id="@+id/backImgBtn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_centerVertical="true" android:background="@null" android:src="@drawable/backarrow" /> </RelativeLayout> <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_below="@+id/headerlayout" android:fillViewport="true" > <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" android:gravity="center" android:orientation="vertical" > <ImageButton android:id="@+id/profilePicImgBtn" android:layout_width="@dimen/sign_up_profile_pic" android:layout_height="@dimen/sign_up_profile_pic" android:layout_gravity="center_horizontal" android:background="@null" android:scaleType="centerCrop" android:src="@drawable/attach_image" /> <EditText android:id="@+id/userNameEdt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/sign_in_small_margin" android:background="@drawable/text_box" android:hint="Username" android:imeOptions="actionNext" android:padding="@dimen/edt_padding" android:singleLine="true" android:textSize="@dimen/edt_hint" /> <EditText android:id="@+id/emailEdt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/sign_in_small_margin" android:background="@drawable/text_box" android:hint="Email" android:imeOptions="actionNext" android:inputType="textEmailAddress" android:padding="@dimen/edt_padding" android:singleLine="true" android:textSize="@dimen/edt_hint" /> <EditText android:id="@+id/passwordEdt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/sign_in_small_margin" android:background="@drawable/text_box" android:hint="Password" android:imeOptions="actionNext" android:inputType="textPassword" android:padding="@dimen/edt_padding" android:singleLine="true" android:textSize="@dimen/edt_hint" /> <EditText android:id="@+id/retypePasswordEdt" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/sign_in_small_margin" android:background="@drawable/text_box" android:hint="Retype Password" android:imeOptions="actionDone" android:inputType="textPassword" android:padding="@dimen/edt_padding" android:singleLine="true" android:textSize="@dimen/edt_hint" /> <ImageButton android:id="@+id/signUpImgBtn" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="@dimen/sign_in_large_margin" android:background="@null" android:src="@drawable/sing_up_main_btn" /> </LinearLayout> </ScrollView> 

+6
source share
2 answers

In oncreate add

 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); 

Update

Try adding this to your scrollview

 android:isScrollContainer="false" 
+7
source

In your AndroidManifest.xml, find the correct activity and add the windowSoftInputMode parameter. adjustPan must be applied to the action.

 <activity android:name="com.yourpackage.YourActivity" android:windowSoftInputMode="adjustPan" > <<=== THIS LINE === </activity> 

UPDATE: This does not seem to work since I started getting votes. Perhaps everything has changed. I know this worked for me.

+1
source

Source: https://habr.com/ru/post/970442/


All Articles