当我第一次关注edittext视图时,我注意到在我可以在文本框中写任何东西之前有一到两秒钟的延迟。
我注意到,即使在没有任何代码的应用程序上,这种行为也比初始化应用程序所需的代码多。
我做错了什么?
发布于 2013-04-27 12:35:32
我已经立即修复了这个问题;我在DDMS中看到,在输入文本时发生了大量的重绘和重新计算,并且调用了大量关于RelativeLayouts的信息。因此,我检查了我的布局;我有一些多行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。这是一个令人惊叹和即时的进步。
发布于 2010-11-02 00:17:11
你在使用模拟器吗?
在使用仿真器时,这是很常见的,而不考虑调试模式或not...at,至少从我目前(有限的)经验来看。在真实的手机上试用你的应用程序,看看会发生什么。
发布于 2010-11-02 01:29:02
我关闭了USB调试并卸载了几个键盘。现在似乎运行得很好。谢谢大家。
https://stackoverflow.com/questions/4069855
复制相似问题