Android软键盘在关闭时会扭曲视图

时间:2012-01-13 05:00:28

标签: android soft-keyboard

我以前从未见过这个。我有一个简单的自定义视图,它具有动画背景,在该视图的顶部,我实现了标准的Android视图集。 TextViews,EditTexts,ImageViews等......

当软键盘启动并且我输入信息时,一切正常。当键盘被隐藏时,视图会混乱。有人见过这个吗?它发生在Galaxy Nexus S上,所有代码都是标准实现。我缺少任何设置或东西?我没试过View.invalidate。解决这个问题的唯一方法是重新加载视图 - 我发现这很烦人!

以下是View I调用的代码,“Enroll”。

<?xml version="1.0" encoding="utf-8"?>

<!-- Intended for logging in or creating an account -->

<ImageView 
    android:id="@+id/fillininfo"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:scaleType="centerInside"
    android:background="@null"
    android:src="@drawable/friends_enroll_fillininfo"
/>

<ImageView 
    android:id="@+id/name"
    android:layout_below="@id/fillininfo"
    android:layout_width="wrap_content"
    android:layout_height="20dip"
    android:scaleType="centerInside"
    android:layout_centerHorizontal="true"
    android:background="@null"
    android:src="@drawable/name"
/>

<EditText
    android:id="@+id/friends_enroll_name"
    android:layout_marginLeft="5dip"
    android:layout_marginRight="5dip"
    android:layout_width="fill_parent"
    android:layout_height="30dip"
    android:layout_below="@id/name"
    android:hint="A name you go by..."
    android:inputType="textPersonName|textCapWords"
    android:gravity="center"
    android:textSize="16sp"
    android:maxLines="1"
    android:lines="1"
    android:singleLine="true"
    android:textColor="@color/white"
    android:textColorHighlight="@color/white"
    android:textColorHint="@color/white"
    android:textColorLink="@color/white"
    android:background="@drawable/textbox_background"

/>

<ImageView 
    android:id="@+id/email"
    android:layout_below="@id/friends_enroll_name"
    android:layout_width="wrap_content"
    android:layout_height="20dip"
    android:scaleType="centerInside"
    android:layout_centerHorizontal="true"
    android:background="@null"
    android:src="@drawable/email"
/>

<EditText
    android:id="@+id/friends_enroll_email"
    android:layout_marginLeft="5dip"
    android:layout_marginRight="5dip"
    android:layout_width="fill_parent"
    android:layout_height="30dip"
    android:layout_below="@id/email"
    android:hint="Your email address..."
    android:inputType="textEmailAddress"
    android:gravity="center"
    android:textSize="16sp"
    android:maxLines="1"
    android:lines="1"
    android:singleLine="true"
    android:textColor="@color/white"
    android:textColorHighlight="@color/white"
    android:textColorHint="@color/white"
    android:textColorLink="@color/white"
    android:background="@drawable/textbox_background"
/>

<RelativeLayout
    android:id="@+id/subscribed"
    android:layout_below="@id/friends_enroll_email"
    android:layout_height="wrap_content"
    android:layout_width="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_marginLeft="5dip"
    android:layout_marginRight="5dip"
    android:layout_marginTop="5dip"
    android:background="@null"
>
    <TextView
        android:id="@+id/subscribed_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textSize="16sp"
        android:background="@null"
        android:layout_centerVertical="true"
        android:text="Email updates and product offers"
    />

    <CheckBox
        android:id="@+id/friends_enroll_issubscribed"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dip"
        android:layout_toRightOf="@id/subscribed_text"
        android:checked="true"
        android:text=" "
    />

</RelativeLayout>

<ImageButton 
    android:id="@+id/send_confirmation"
    android:layout_width="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_height="40dip"
    android:layout_below="@id/subscribed"
    android:scaleType="centerInside"
    android:src="@drawable/button_send_confirmation"
    android:background="@null"
/>

<TextView 
    android:id="@+id/friends_enroll_msg"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_below="@id/send_confirmation"
    android:textColor="@color/white"
    android:text=""
    android:singleLine="false"
    android:gravity="center"
    android:textSize="14sp"
/>

Views distorted after soft keyboard is minimized - android

此致

鲍勃

1 个答案:

答案 0 :(得分:0)

我通过将布局XML中的android:imeOptions设置为“actionDone”来回答这个问题。

软键盘假设“actionNext”导致视图向上移动扭曲视图。指定“actionDone”后,视图不再采用另一个EditText。