Android 何时使用RecyclerView setHasFixedSize(真)?

Android 何时使用RecyclerView setHasFixedSize(真)?,android,android-recyclerview,android-cardview,Android,Android Recyclerview,Android Cardview,我已经阅读了Android开发者信息和一些SO帖子和RecyclerView文章。我还不清楚是否可以使用: recyclerView.setHasFixedSize(true); 方法在我的RecyclerView列表中。随着CardView项目的动态添加和删除,我的RecyclerView列表的大小将不断变化。但是,每个CardView的大小(高度和长度)是固定的。请告知。如果您事先知道一旦为RecyclerView设置了适配器,它的大小将保持不变,则该选项是可选的。然后在初始化Recycl

我已经阅读了Android开发者信息和一些SO帖子和RecyclerView文章。我还不清楚是否可以使用:

recyclerView.setHasFixedSize(true);

方法在我的RecyclerView列表中。随着CardView项目的动态添加和删除,我的RecyclerView列表的大小将不断变化。但是,每个CardView的大小(高度和长度)是固定的。请告知。

如果您事先知道一旦为RecyclerView设置了适配器,它的大小将保持不变,则该选项是可选的。然后在初始化RecyclerView对象后使用这行代码,否则不需要使用它

是的,您可以使用

recyclerView.setHasFixedSize(true); 
只要recyclerview的高度和宽度保持不变

来自Android开发者:

public void setHasFixedSize (boolean hasFixedSize)
如果RecyclerView能够在 请注意,适配器内容的更改不能更改适配器的大小 回收视图本身。如果您对RecyclerView的使用属于以下情况 类别,将其设置为true。参数hasFixedSize如果适配器为true 更改不会影响RecyclerView的大小


我已经将RecyclerView布局的宽度和高度分别设置为与布局文件中的父级匹配…因此不确定这相对于您的答案意味着什么。这意味着您可以使用它,没有问题是的,我这样做了,下面是我从中了解到的-它只是用于RecyclerView的内部优化。如果您知道您的列表不会更改,那么可以将hasFixedSize设置为true。例如,您正在显示一个带有静态类别列表的对话框。在这里,您在本地获取列表,因此知道列表大小不会改变,用户可以执行的唯一操作是选择它们。他在动态添加和删除项目,而不改变RecyclerView的大小我认为这与数据集有关是的,但我不清楚您指的是什么大小…RecyclerView列表I我创建的内容会随着时间的推移而增长,因为添加了更多的CardView,或者是CardView本身的布局是固定的。其内容不是布局。所以你不需要使用它。可能是