Order your layout like this and you will able to put button to above keyboard
<?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" > <ScrollView android:layout_width="match_parent" android:layout_height="match_parent" android:layout_above="@+id/button_next" android:background="#0ff" > <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <EditText android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="250dp" android:hint="Hint" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ABC" android:textSize="50sp" /> </LinearLayout> </ScrollView> <Button android:id="@+id/button_next" android:layout_width="match_parent" android:layout_height="60dp" android:layout_alignParentBottom="true" android:layout_margin="10dp" android:text="Button Next" /> </RelativeLayout>
In android manifest
<application ... > <activity android:name=".YourActivity" android:windowSoftInputMode="adjustResize" > </activity> </application>

Note that, instead of RelativeLayout, you can also use another ViewGroup like LinearLayout with weight, CordinatorLayout, ...