我正在寻找需要不断修改的最佳视图或活动性能。想象某种基于“对话”的列表,其中新元素一直添加到对话中。
游标在这里合适吗?ListActivity 呢?
选择还重要吗?在性能方面有什么明显的区别吗?我相信你(现在)明白我是 Android 开发的新手。我希望你明白。
我正在寻找需要不断修改的最佳视图或活动性能。想象某种基于“对话”的列表,其中新元素一直添加到对话中。
游标在这里合适吗?ListActivity 呢?
选择还重要吗?在性能方面有什么明显的区别吗?我相信你(现在)明白我是 Android 开发的新手。我希望你明白。
我查看了内置 SMS Android 应用程序的源代码,这是 Layout
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ListView android:id="@android:id/list"
style="?android:attr/listViewWhiteStyle"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:drawSelectorOnTop="false"
android:scrollbarStyle="insideOverlay"
android:background="@android:color/white"
android:cacheColorHint="@android:color/white"
android:fadingEdgeLength="16dip" />
<TextView android:id="@+id/empty"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:text="@string/loading_conversations"
android:textAppearance="?android:attr/textAppearanceMedium" />
</RelativeLayout>
因此,如果您正在制作“对话”应用程序,则可以安全地使用ListView
没有性能问题的应用程序。
你真的是在倒着想事情。提出有效显示信息的 UI 设计。然后弄清楚如何实现该设计。在那之前不要考虑单独的课程。
顺便说一句,如果您的主视图几乎只是一个 ListView,那么您只会使用 ListActivity。并且只有在发出 db 请求时才使用游标。您不会考虑两者的类型 - 您将为每个应用程序(通常不止一个)编写自己的自定义活动,并且您根本不选择游标类型 - 您正在使用的数据源将如果合适,给你一份。
这取决于您的要求。在大多数情况下,您可以使用许多不同类型的视图,但假设您将其打开很长时间,如果您所做的只是添加(与删除)它,它将消耗越来越多的内存。这通常意味着您需要一种策略来删除一些项目并在适用时重新加载(例如,从“对话”的早期删除并在您向上滚动时添加回来)。我很少实际使用ListActivity
,但倾向于只ListView
在常规 a 中使用 s ,但本身Activity
并没有错。ListActivity
根据您的描述,我肯定会考虑某种形式ListView
。还要了解适配器是如何工作的,因为它们是ListView
s 的对应物。