屏幕底部带有按钮的 scrollView

scrollView with Button at Bottom of screen

我必须为表单数据使用滚动视图,并且按钮应该位于屏幕底部。我已经实现了。但问题是,每当 EditText 获得焦点并且键盘打开时,按钮不会停留在屏幕底部,它恰好位于 android 键盘上方。无论是否打开键盘,我都希望它位于底部。

我试过 android:fillViewport="true" 滚动视图,但它没有提供正确的输出。

<?xml version="1.0" encoding="utf-8"?>
        <RelativeLayout 
           xmlns:android="http://schemas.android.com/apk/res/android"

            xmlns:app="http://schemas.android.com/apk/res-auto"
            android:id="@+id/lout"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:orientation="vertical">


            <ScrollView
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:fillViewport="true">

                <LinearLayout
                    android:id="@+id/fout"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical"
                    android:paddingBottom="16dp"
                    android:paddingTop="10dp">

                    <ImageView
                        android:id="@+id/fimg"
                        android:layout_width="match_parent"
                        android:layout_height="250dp"
                        android:src="@drawable/addimg" />

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/vsubcusine"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:paddingBottom="10dp"
                        android:paddingLeft="5dp"
                        android:paddingRight="5dp"
                        android:paddingTop="10dp"
            >

                        <EditText
                            android:id="@+id/add_food_title"
                            style="@style/textbox"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:hint="Title for Food"
                            android:inputType="text"

                            />
                    </android.support.design.widget.TextInputLayout>

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/vcusine"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:hint="cusine"
                        android:paddingBottom="10dp"
                        android:paddingLeft="10dp"
                        android:paddingRight="10dp"
                        android:paddingTop="0dp">

                        <Spinner
                            android:id="@+id/cusine"
                            style="@style/textbox"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:background="#fff"
                            android:padding="10dp" />
                    </android.support.design.widget.TextInputLayout>

                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:orientation="horizontal"
                        android:paddingBottom="10dp"
                        android:paddingLeft="10dp"
                        android:paddingRight="10dp"
                        android:paddingTop="10dp">


                        <RadioGroup
                            android:id="@+id/isveg"
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:orientation="horizontal"
                            android:paddingLeft="20dp">

                            <RadioButton
                                android:id="@+id/veg"
                                android:layout_width="match_parent"
                                android:layout_height="wrap_content"
                                android:layout_weight="2"
                                android:text="Veg" />

                            <RadioButton
                                android:id="@+id/nonveg"
                                android:layout_width="match_parent"
                                android:layout_height="wrap_content"
                                android:layout_weight="2"

                                android:text="Non-Veg" />

                        </RadioGroup>
                    </LinearLayout>

                    <android.support.design.widget.TextInputLayout
                        android:id="@+id/vfprice"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:paddingBottom="0dp"
                        android:paddingLeft="10dp"
                        android:paddingRight="10dp"
                        android:paddingTop="0dp"
                        >

                        <EditText
                            android:id="@+id/fprice"
                            style="@style/textbox"
                            android:layout_width="match_parent"
                            android:layout_height="match_parent"
                            android:hint="price"
                            android:inputType="number" />


                    </android.support.design.widget.TextInputLayout>
                </LinearLayout>
            </ScrollView>


            <LinearLayout
                android:id="@+id/t"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_alignParentBottom="true"
                android:gravity="center"
                android:orientation="horizontal"
                android:weightSum="2">

                <Button
                    android:id="@+id/foodadd"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_margin="10dp"
                    android:layout_weight="1"
                    android:background="@drawable/button"
                    android:text="ADD FOOD"
                    android:textColor="#FFF"
                    android:textStyle="bold" />
            </LinearLayout>

        </RelativeLayout>

manifest 中,只需将 android:windowSoftInputMode="adjustPan" 添加到相应的 activity 标签中:

     <activity
        android:name=".YourActivity"
        android:windowSoftInputMode="adjustPan">

输出:

希望对您有所帮助。