java - Android Recyclerview 的一些项目

标签 java android xamarin xamarin.android android-recyclerview

我有一个 CardView 列表,每个 CardView 都有一个标题和一个图标。单击每个项目后,将打开一个 Activity ,其中包含该卡片的详细信息。
我认为我需要的项目不会超过几个(我认为不会超过 10 个),而且我不确定它们会有多大的活力和变化。

我的问题是:我应该使用 RecyclerView 来显示这些项目,还是应该复制卡片并在没有 RecyclerView 的情况下在 LinearLayout 中显示它们

就性能而言,哪个选项更好?

最佳答案

两个选项都应该没问题(我没有测试性能,但都运行正常),尽管我更喜欢 Linearlayout。由于列表很小,您会失去 RecyclerView 的大部分优势(性能方面)。

如果您决定使用LinearLayout,您可以创建一个Compound control并将其重复用于不同的项目,这样您就不必在发生变化时手动编辑每个项目。

如果您决定使用 RecyclerView,请不要忘记调用 setItemViewCacheSize() 并将其设置为合理的数量(项目的数量),因为对于很少的项目,它每次滚动时都需要重新填充项目是没有意义的。这对于较大的列表是有意义的,因为您无法有效地处理那么多项目,但对于 cca 10 个项目,如果将它们全部缓存,似乎会更快。您还应该做的下一件事是在 RecyclerView 上调用 setHasFixedSize(true)。如果您不需要嵌套滚动,也请调用 setNestedScrollingEnabled(false),否则滚动的行为可能会有点奇怪(如果您快速滑动,则不会出现“快速/持续滚动”)。

希望这有帮助。

关于java - Android Recyclerview 的一些项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39201778/

相关文章:

java - (改造)找不到类崩溃应用程序的转换器

javascript - 如何修复 Cordova Android 模拟器问题?

android - 如何在 Android 上创建两行 TextView?

java - 使用 Spring Boot 在 postgreSql 中添加静态数据的最佳方法

java - 在 Java 中用字符串切换大小写 - 垃圾?

java - 在 Android Studio 中从 JSON 中的数组中获取字符串

android - 回调是否发生在主(UI)线程上?

c# - 无效的 il 代码 System.IO.Compression.ZipFile.OpenRead() 方法主体为空

c# - 在 Xamarin Android 中连接到外部数据库

java - 使用 Java 从 PDF 模板动态生成 PDF,无格式问题