当键盘消失时,我想在Android键盘出现时向下移动按钮

时间:2017-04-06 08:09:22

标签: android android-layout

当键盘消失时,我想在Android键盘出现时向下移动按钮  目前键盘正在按钮。 见截图 screeshot 我已经尝试过以下但没有超过键盘。

<android:windowSoftInputMode="adjustPan">

android:windowSoftInputMode="adjustResize"

布局:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#ffffff">



    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"

        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        >



        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/slide_name_title"
            android:paddingLeft="@dimen/desc_padding"
            android:paddingRight="@dimen/desc_padding"

            android:layout_marginTop="45dp"
            android:textColor="#283D65"
            android:textSize="@dimen/slide_title"
            android:textStyle="bold" />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="@string/slide_1_1_title"
            android:layout_marginTop="10dp"
            android:paddingLeft="@dimen/desc_padding"
            android:paddingRight="@dimen/desc_padding"
            android:textColor="#8E8E8E"
            android:textSize="@dimen/slide_title1"
             />

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="20dp"
            android:paddingLeft="@dimen/desc_padding"
            android:paddingRight="@dimen/desc_padding"
            android:text="@string/slide_1_desc"
            android:textColor="#2A3042"
            android:textSize="@dimen/slide_desc" />




        <EditText
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:inputType="textPersonName"
            android:hint="Full Name (Eg. John Smith)"
            android:background="@color/white"
            android:textColorHint="#8E8E8E"
            android:maxLength="25"
            android:maxLines="1"
            android:layout_marginTop="20dp"
            android:paddingLeft="@dimen/desc_padding"
            android:paddingRight="@dimen/desc_padding"
            android:textColor="#000000"
            android:id="@+id/editTextUserName" />

        <View
            android:layout_width="match_parent"
            android:layout_height="2dp"
            android:layout_marginLeft="30dp"
            android:layout_marginRight="30dp"
            android:layout_marginTop="10dp"
            android:layout_gravity="center"
            android:layout_above="@+id/password"
            android:background="#E0E0E0"
            android:layout_below="@+id/login_button"></View>


    </LinearLayout>

    <RelativeLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:gravity="center"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="53dp"
        >
    <ViewFlipper
        android:id="@+id/viewFlipper"
        android:layout_width="310dp"
        android:layout_height="48dp"
        >
        <Button
            android:text="नमस्ते"
            android:backgroundTint="#2DC9D7"

            android:layout_width="310dp"
            android:layout_height="48dp"
            android:textSize="20dp"

            android:background="@drawable/button_corner"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"

            android:id="@+id/btn_name_next"/>
        <Button
        android:text="Hello"
        android:backgroundTint="#2DC9D7"
            android:layout_width="310dp"
            android:layout_height="48dp"
        android:background="@drawable/button_corner"

        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"

        android:id="@+id/btn_name_next1"/>
        <Button
        android:text="Hi"
        android:backgroundTint="#2DC9D7"
            android:layout_width="310dp"
            android:layout_height="48dp"

        android:background="@drawable/button_corner"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"

        android:id="@+id/btn_name_next2"/>
    </ViewFlipper>
</RelativeLayout>


</RelativeLayout>

3 个答案:

答案 0 :(得分:0)

将按钮放在框架布局中,并将framelayout的fitSystemWindows属性设置为true

答案 1 :(得分:0)

试试这个:

将您的顶部布局包装在scrollview中:保留按钮布局

 <ScrollView
        android:id="@+id/scrollview"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_marginBottom="15dp"
        android:layout_marginLeft="10dp"
        android:layout_marginRight="10dp"
        android:fillViewport="false">

        <LinearLayout>
        </LinearLayout>

</ScrollView>

现在按钮布局:

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/scrollview"
    android:layout_centerHorizontal="true"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="10dp"
    android:layout_marginTop="10dp"
    android:gravity="center"
    android:orientation="vertical">

</RelativeLayout>

在清单中:

android:windowSoftInputMode="adjustResize"

出于某种原因,这对我有用..

修改

请致电:getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);

答案 2 :(得分:0)

使用此代码可以解决您的问题并在有任何问题时发表评论。

  

在Android清单文件

中的活动中使用以下行
android:windowSoftInputMode="stateAlwaysHidden|adjustResize"
  

使用以下布局代码

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#ffffff"
android:orientation="vertical">


<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:orientation="vertical">


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="45dp"
        android:paddingLeft="50dp"
        android:paddingRight="50dp"
        android:text="Welcome"
        android:textColor="#283D65"
        android:textSize="15sp"
        android:textStyle="bold" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:paddingLeft="50dp"
        android:paddingRight="50dp"
        android:text="Happy To see you! Let's get to know each other"
        android:textColor="#8E8E8E"
        android:textSize="18sp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:paddingLeft="50dp"
        android:paddingRight="50dp"
        android:text="What should we call you?"
        android:textColor="#2A3042"
        android:textSize="13sp" />


    <EditText
        android:id="@+id/editTextUserName"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="20dp"
        android:background="#ffffff"
        android:hint="Full Name (Eg. John Smith)"
        android:inputType="textPersonName"
        android:maxLength="25"
        android:maxLines="1"
        android:paddingLeft="50dp"
        android:paddingRight="50dp"
        android:textColor="#000000"
        android:textColorHint="#8E8E8E" />

    <View
        android:layout_width="match_parent"
        android:layout_height="2dp"
        android:layout_above="@+id/password"
        android:layout_below="@+id/login_button"
        android:layout_gravity="center"
        android:layout_marginLeft="30dp"
        android:layout_marginRight="30dp"
        android:layout_marginTop="10dp"
        android:background="#E0E0E0"></View>


</LinearLayout>

<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="53dp"
    android:gravity="center"
    android:orientation="vertical">

    <ViewFlipper
        android:id="@+id/viewFlipper"
        android:layout_width="310dp"
        android:layout_height="48dp">

        <Button
            android:id="@+id/btn_name_next"
            android:layout_width="310dp"
            android:layout_height="48dp"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:background="#000"
            android:backgroundTint="#2DC9D7"
            android:text="नमस्ते"
            android:textSize="20dp" />

        <Button
            android:id="@+id/btn_name_next1"
            android:layout_width="310dp"
            android:layout_height="48dp"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:background="#000"
            android:backgroundTint="#2DC9D7"
            android:text="Hello" />

        <Button
            android:id="@+id/btn_name_next2"
            android:layout_width="310dp"
            android:layout_height="48dp"
            android:layout_alignParentBottom="true"
            android:layout_centerHorizontal="true"
            android:background="#000"
            android:backgroundTint="#2DC9D7"
            android:text="Hi" />
    </ViewFlipper>
</RelativeLayout>