Edittext"滞后"android

Ale*_*der 2 android android-edittext

我第一次关注edittext视图时,我注意到在我可以在文本框中写入任何内容之前有一两秒的延迟.

我注意到这种行为甚至在没有任何代码的应用程序上,而不是初始化应用程序的nessecary.

我究竟做错了什么?

Jam*_*rih 6

我一直在为我解决这个问题; 我在DDMS中看到,在输入文本时发生了大量的重绘和重新计算,并且调用了很多关于RelativeLayouts的信息.所以,我检查了我的布局; 我有一些Multi-Line EditText是RelativeLayout的直接子项.所以,我把它们包装成一个线性布局,并在LinearLayout指定我想要的宽度/高度,而不是每个EditText.

你猜怎么着?它完全修好了!!

(下面,一些代码......请记住,这只是一个近似值.不要尝试复制/粘贴)

之前:

<RelativeLayout>
    <EditText
        android:layout_width="wrap_content" />
    <EditText
        android:layout_width="wrap_content" />
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

后:

<RelativeLayout>
    <LinearLayout
        android:layout_width="wrap_content" >
        <EditText
            android:layout_width="fill_parent" />
        <EditText
            android:layout_width="fill_parent" />
    </LinearLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

将我的EditText包装成LinearLayout,并将动态布局控件放弃到LinearLayout.这是一个惊人的,即时的改进.