recyclerview 的 childView 和 index 是啥?
Posted
技术标签:
【中文标题】recyclerview 的 childView 和 index 是啥?【英文标题】:What is the childView and index of a recyclerview?recyclerview 的 childView 和 index 是什么? 【发布时间】:2016-04-03 08:59:54 【问题描述】:在文档中它说该职位是 位置:数据项在适配器中的位置。 我得到了它在recyclerview中的位置,但我没有得到什么索引:在调用getChildAt(int)时使用的附加子视图的索引。与位置对比。 孩子是否查看膨胀的xml文件,如果是,它的索引是什么?
【问题讨论】:
【参考方案1】:每个项目实际上有 3 个值:
适配器位置 布局位置 如果您使用 stableIds,则所有项目的 ID 将默认为-1
。
适配器位置是您最有可能使用的位置。如果你有你的数据
String[] myListData;
适配器位置是bindViewHolder(VH holder, int adapterPosition)
被调用的位置。它标识了您要显示的对象。
如果您有一个包含 1000 个项目的列表,则一次只会显示少数(例如 10 个)——这就是您使用 recyclerView 而不是 LinearLayout 的原因。
如果您想知道您的项目在哪里显示,您会对视图的索引或布局位置感兴趣。如果您滚动,前 10 个项目可能不可见,而第 11 个项目可能是第一个可见的项目,因此 layoutPosition==0, or index==0
位于滚动列表的顶部。
你只需要这个,如果你打算做一些自定义绘图,RecyclerView.ItemDecoration
或其他一些滚动/状态监听。对于 recyclerView 的基本使用,可以安全地忽略索引或布局位置。
【讨论】:
以上是关于recyclerview 的 childView 和 index 是啥?的主要内容,如果未能解决你的问题,请参考以下文章
RecyclerView 为一个 Item 调用 setTextColor 会影响其他 Item
ScrollView -> ChildView 没有调整到约束
无法在 childView 中禁用 UITapGesture