第一次聚焦编辑 TextView 时,我注意到在文本框中写入任何内容之前有一两秒的延迟。
即使在没有任何代码来初始化应用程序的应用程序上,我也注意到了这种行为。
我做错了什么?
最佳答案
我已经立即为我解决了这个问题;我在 DDMS 中看到,输入文本时发生了大量重绘和重新计算,并且调用了很多有关relativelayout 的信息。所以,我检查了我的布局;我有一些多行EditText,它们是RelativeLayout 的直接子级。因此,我将它们包装到线性布局中,并在 LinearLayout 中指定我所需的宽度/高度,而不是每个 EditText。
你猜怎么着?它完全解决了它!!
(下面是一些代码...请记住,这只是一个近似值。不要尝试复制/粘贴)
之前:
<RelativeLayout>
<EditText
android:layout_width="wrap_content" />
<EditText
android:layout_width="wrap_content" />
</RelativeLayout>
之后:
<RelativeLayout>
<LinearLayout
android:layout_width="wrap_content" >
<EditText
android:layout_width="fill_parent" />
<EditText
android:layout_width="fill_parent" />
</LinearLayout>
</RelativeLayout>
将我的 EditText 包装到 LinearLayout 中,并将动态布局控件交给 LinearLayout。 这是一个惊人的、即时的改进。
关于android - 编辑文本 "lag"android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4069855/