Android 安卓键盘覆盖底部按钮

Android 安卓键盘覆盖底部按钮,android,android-layout,keyboard,Android,Android Layout,Keyboard,我正在构建的应用程序有一个登录屏幕,上面有徽标、用户名的编辑文本、密码的编辑文本和登录按钮 以前我有一个ScrollView,并将EditText和singleline都设为true。因此,用户可以键入详细信息,并在键入时单击“下一步”。然后点击finish,然后选择login按钮,或者向下滑动以选择login 但是,客户希望从登录页面中删除ScrollView。因此,按钮和两个编辑文本始终位于底部,或者位于屏幕底部,或者位于键盘上方(如果键盘向上) 我可以将按钮保持在顶部,但第二个EditTe

我正在构建的应用程序有一个登录屏幕,上面有徽标、用户名的编辑文本、密码的编辑文本和登录按钮

以前我有一个ScrollView,并将EditText和singleline都设为true。因此,用户可以键入详细信息,并在键入时单击“下一步”。然后点击finish,然后选择login按钮,或者向下滑动以选择login

但是,客户希望从登录页面中删除ScrollView。因此,按钮和两个编辑文本始终位于底部,或者位于屏幕底部,或者位于键盘上方(如果键盘向上)

我可以将按钮保持在顶部,但第二个EditText会被覆盖,或者我可以将两个EditText都保持在屏幕上,但按钮会转到屏幕下。 如何阻止键盘覆盖登录页面的第二个编辑文本按钮

下面是我的代码:


我曾尝试使用另一个论坛问题建议中的线性权重: -

如果您有类似的问题,这些问题可能会有所帮助:

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_above="@+id/loginButton"
    android:orientation="vertical"
    android:layout_weight="1">

    <ImageView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:id="@+id/mainLogoImageView"
        android:src="@drawable/ic_logo_main"
        android:layout_alignParentRight="true"
        android:layout_alignParentLeft="true"
        android:layout_above="@+id/usernameEditText"
        android:layout_alignParentTop="true"
        android:layout_alignParentBottom="false" />

</LinearLayout>

<LinearLayout
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:layout_weight="0">

    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/usernameEditText"
        android:hint="@string/username"
        android:layout_alignParentLeft="true"
        android:maxLines="1"
        android:singleLine="true"
        android:layout_alignParentRight="true"
        android:layout_above="@+id/passwordEditText"/>
</LinearLayout>

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_weight="0">
    <EditText
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:inputType="textPassword"
        android:ems="10"
        android:id="@+id/passwordEditText"
        android:hint="@string/password"
        android:layout_alignParentLeft="true"
        android:layout_alignParentBottom="true"
        android:singleLine="true"
        android:layout_alignParentRight="true"/>
    </LinearLayout>

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:layout_weight="0">
    <ImageButton
            android:layout_width="150dp"
            android:layout_height="wrap_content"
            android:src="@drawable/ic_signin"
            android:text="Sign In"
            android:id="@+id/loginButton"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:onClick="attemptLogin"
            android:background="@color/orange_button_bg"
            style="?android:attr/borderlessButtonStyle"
            android:layout_gravity="center_horizontal"/>
</LinearLayout>