I have an activity with a couple of editText
in the top of the activity and two buttons
that i have in a footer.
When I press one of the edit text the keyboard is shows up and the footer adjustResize
. This is the behaviour that I want to have.
My problem is that when I try to press one of this buttons
(when the keyboard is visible) the keyboard is hidden and the action to press the button is not working.
My question is, how can I keep the footer working when the keyboard is visible in the activity.
My activity in the manifest:
<activity
android:name=".activity.InitSessionActivity"
android:configChanges="orientation"
android:screenOrientation="portrait"
android:windowSoftInputMode="adjustResize" />
I've created my activity according to the solution of this answer: How to adjust layout when soft keyboard appears
My activity xml:
<?xml version="1.0" encoding="utf-8"?>
<ScrollView android:layout_width="match_parent"
android:layout_height="match_parent"
style="@style/screen"
android:fillViewport="true"
android:background="@color/colorPrimary"
android:layout_alignParentBottom="true"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
style="@style/screen"
android:id="@+id/ly_general"
android:fitsSystemWindows="true">
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/inputTextLayout"
android:layout_marginTop="172dp"
app:hintTextAppearance="@style/edittextWithTextInputLayout"
android:layout_centerHorizontal="true"
android:id="@+id/textInputLayout">
</android.support.design.widget.TextInputLayout>
<include layout="@layout/footer" />
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/inputTextLayout"
app:hintTextAppearance="@style/edittextWithTextInputLayout"
android:id="@+id/textInputLayoutEmail"
android:layout_below="@+id/text_init_session"
android:layout_marginTop="@dimen/padding_10">
<EditText
android:id="@+id/login_ed_email"
android:layout_width="314dp"
android:layout_height="wrap_content"
android:hint="@string/login_hint_email"
android:drawablePadding="5dp"
android:inputType="textEmailAddress"
android:textColorHint="@color/white3"
style="@style/edittextWithTextInputLayout"
android:transitionName="@string/email"
android:nextFocusDown="@+id/login_ed_password"
android:layout_marginTop="9dp"
android:layout_below="@+id/text_init_session"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:backgroundTint="@color/secundary_foreground" />
</android.support.design.widget.TextInputLayout>
<android.support.design.widget.TextInputLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
style="@style/inputTextLayout"
app:hintTextAppearance="@style/edittextWithTextInputLayout"
android:id="@+id/textInputLayout2"
android:layout_marginTop="16dp"
android:layout_below="@+id/textInputLayoutEmail">
<EditText
android:id="@+id/login_ed_password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="ContraseƱa"
android:textColorHint="@color/colorPrimary"
style="@style/edittextWithTextInputLayout"
android:transitionName="@string/password"
android:drawableLeft="@drawable/login_ico_password"
android:drawablePadding="5dp"
android:nextFocusDown="@+id/login_btn_enter"
android:nextFocusUp="@+id/login_ed_email"
android:inputType="textPassword"
android:backgroundTint="@color/secundary_foreground" />
</android.support.design.widget.TextInputLayout>
<TextView
android:id="@+id/login_tx_forgot"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:textColor="@color/secundary_foreground"
android:padding="@dimen/margin_13"
android:text="@string/login_forgot_password"
android:layout_below="@+id/textInputLayout2"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="@dimen/padding_16"/>
<TextView
android:text="@string/login_title_init_session"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="@color/white"
android:padding="10dp"
android:textSize="@dimen/text_size_22"
android:id="@+id/text_init_session"
android:layout_marginTop="17dp"
android:layout_marginLeft="@dimen/padding_13"
android:layout_below="@+id/image"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true" />
<ImageView
android:id="@+id/image"
android:layout_width="134dp"
android:layout_height="45dp"
android:src="@drawable/logo_loycus_new"
android:layout_alignParentTop="true"
android:layout_alignLeft="@+id/textInputLayoutEmail"
android:layout_alignStart="@+id/textInputLayoutEmail" />
</RelativeLayout>
</ScrollView>
Foter:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/footer"
android:layout_width="match_parent"
android:layout_height="70dp"
android:layout_alignParentBottom="true"
android:gravity="center"
android:background="@color/colorPrimary">
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="@color/backgroundScreens"
android:id="@+id/view"/>
<Button
android:text="@string/volver"
android:textAllCaps="false"
android:layout_width="@dimen/button_folder_widht"
android:layout_height="@dimen/button_folder_height"
android:id="@+id/buttonComeBack"
android:background="@drawable/btn_selecto_come_back"
android:textColor="@color/white"
android:layout_marginLeft="@dimen/margin_16"
android:layout_marginTop="@dimen/padding_10"/>
<Button
android:layout_marginTop="@dimen/padding_10"
android:text="@string/enter"
android:textAllCaps="false"
android:layout_width="@dimen/button_folder_widht"
android:layout_height="@dimen/button_folder_height"
android:background="@drawable/btn_selector_green"
android:textColor="@color/colorPrimary"
android:id="@+id/login_loycus"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_alignParentEnd="true"
android:layout_marginRight="@dimen/margin_16"/>
</RelativeLayout>
Edit your footer as:-
Remove this from ScrollView
Remove this from relative layout having id ly_general
Add this to scrollview
EDIT:-
If you don't want to align your footer to bottom, then remove this line
and adjust it wherever you want to place it on your UI.