Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 当视图被添加到布局中时,如何处理起伏的图形?_Android_Android Layout - Fatal编程技术网

Android 当视图被添加到布局中时,如何处理起伏的图形?

Android 当视图被添加到布局中时,如何处理起伏的图形?,android,android-layout,Android,Android Layout,我有10个视图被添加到垂直方向的线性布局中。这一切都发生在运行时。但是,每次重新绘制布局时,用户都可以看到从空白布局到添加了所有10个视图的布局的起伏过渡。减少起伏的推荐方法是什么?您可以在渲染LinearLayout之前添加所有10项(例如在onCreate方法中) 或者您可以使用ListView。您可以在中找到更多详细信息 我的猜测是,您必须使用一些自定义视图,该视图在onDraw()期间执行大量处理。尝试提前或在单独的线程中执行所有可以执行的处理 此外,使用inazaruk建议的ListV

我有10个视图被添加到垂直方向的
线性布局中。这一切都发生在运行时。但是,每次重新绘制布局时,用户都可以看到从空白布局到添加了所有10个视图的布局的起伏过渡。减少起伏的推荐方法是什么?

您可以在渲染
LinearLayout
之前添加所有10项(例如在
onCreate
方法中)


或者您可以使用
ListView
。您可以在中找到更多详细信息

我的猜测是,您必须使用一些自定义视图,该视图在onDraw()期间执行大量处理。尝试提前或在单独的线程中执行所有可以执行的处理

此外,使用inazaruk建议的ListView可以将数据生成和视图呈现分离开来


如果不是这样,请查看代码中是否正在onDraw()中创建多个对象。如果是这样,请重新格式化代码,以便重用这些对象。这将防止垃圾回收器一直启动以恢复您未使用的内存。

+1列表视图可能是一个不错的选择,但是如果它在每次绘制时都不稳定,而不是只添加时,我想代码中有不止一个问题。是的,看起来您是对的。它只有10个视图,除非
onDraw
足够复杂,否则重新渲染应该不会引起注意。