Android RecycleView:添加动态视图

时间:2015-03-01 22:56:03

标签: android

我决定升级我的代码,现在使用RecyclerView而不是我现在使用的列表。

据我所知,以下是通常情况:

  • onCreateViewHolder - 这会使视图膨胀,并执行findviewbyid并将其作为视图的ViewHolder对象返回
  • onBindViewHolder - 这会将视图持有者值分配给位置视图(正在回收)。

这一切都很好,花花公子......如果列表中的视图包含相同的字段......

然而,在我根据适配器List(在getView方法中)以编程方式添加视图之前,我的列表中的视图是不同的。

是否有良好的做法"处理这个问题的方法,我无法想出一个解决这个问题的好方法。

getViewItemType不起作用,因为视图是唯一的,并且它们不是预定义的。

1 个答案:

答案 0 :(得分:2)

当您在ListView或RecyclerView中使用不同类型的视图时,需要使用以下内容: -

getItemViewType() and getViewTypeCount()

首先,您需要使用getViewTypeCount()并返回List中所需的唯一视图数。然后重写getItemViewType()并返回要在List行中扩充的View类型。

希望它会有所帮助。

如果您仍有任何问题并需要一个有效的示例,请告诉我,我会更新我的答案。