Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Toolbar moves up when keyboard appears

I'm creating a chat based UI screen where I have toolbar and recyclerview for chat messages, and reply msg layout.

Whenever edittext get focus It moves up the toolbar. Instead I would like to resize the recyclerview.

some of the stackoverflow answers suggest to place a empty scrollview below the toolbar, but It didn't work.

        <activity             android:name=".PostMessageActivity"             android:label="@string/title_activity_post_message"             android:windowSoftInputMode="stateVisible|adjustResize"             >         </activity> 

I am setting the windowSoftInputMode to stateVisible|adjustPan in the manifest file.

<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" tools:context="com.pasonet.yokibu.PostMessageActivity" > <include     android:id="@+id/toolbar_home"     layout="@layout/toolbar_home"     android:elevation="5dp"     />  <ScrollView     android:layout_width="match_parent"     android:layout_height="match_parent"> </ScrollView>   <LinearLayout     android:layout_width="match_parent"     android:layout_height="match_parent"     android:layout_below="@+id/toolbar_home"     android:orientation="vertical"     android:layout_above="@+id/add_post_layout"     >     <android.support.v7.widget.RecyclerView         android:layout_width="match_parent"         android:layout_height="match_parent"         android:id="@+id/post_msg_recyclerview"         >     </android.support.v7.widget.RecyclerView>   </LinearLayout>  <LinearLayout     android:orientation="horizontal"     android:layout_width="fill_parent"     android:layout_height="wrap_content"     android:layout_alignParentBottom="true"     android:layout_centerHorizontal="true"     android:padding="5dp"     android:id="@+id/add_post_layout"     android:background="#ffffff"     android:layout_alignParentLeft="true"     android:layout_alignParentRight="true"     android:elevation="5dp"     android:layout_margin="0pt"    >      <EditText         android:layout_width="0dp"         android:layout_height="match_parent"         android:id="@+id/messageText"         android:layout_gravity="bottom"         android:layout_weight="1"         android:maxLines="4"         android:scrollbars="vertical"         android:background="@color/trasnperant"         android:hint="Type your message"         android:layout_marginBottom="4dp"         />     <ImageButton         android:layout_width="wrap_content"         android:layout_height="wrap_content"         android:src="@drawable/ic_send_black_36dp"         android:id="@+id/sendButton"         android:background="@drawable/abc_btn_default_mtrl_shape"         android:onClick="addPost"         /> </LinearLayout> 

enter image description here

like image 281
AlgoCoder Avatar asked Sep 18 '15 10:09

AlgoCoder


People also ask

How do I center my toolbar title on Android?

suggest use android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" instead. To keep using default styles for the customised TextView, try something like style="@style/TextAppearance.


1 Answers

The problem was that I was using <item name="android:windowTranslucentStatus">true</item> in styles.xml

To enable adjustResize add android:fitsSystemWindows="true" in your activity's parent layout

like image 98
AlgoCoder Avatar answered Oct 03 '22 00:10

AlgoCoder