【发布时间】:2016-02-24 02:00:51
【问题描述】:
在使用CardView 时,为卡片显示某种布局非常简单。
我为我的卡片创建了一个 XML 布局,并使用 LayoutInflater 将该 XML 布局实例化到视图。
更具体地说:
View largeCardView = LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.card_view, viewGroup, false);
在我的RecyclerAdapter 的onCreate() 方法中调用。然后onCreate 方法返回这个largeCardVew。这可以完美运行,并且卡片会按照 XML 文件中的布局显示。
但是如果我想为不同的内容显示不同的卡片怎么办?是否可以为不同的事物显示不同的卡片,但它们都在同一个RecyclerView?
例如,如果我事先知道卡中会有一个字符串传入TextView,而这个字符串只能有“Large”和“Small”两个值,我该如何使用一种类型的与“大”文本一起使用的 XML 文件,以及与“小”文本一起使用的另一个 XML 文件?
这是一个例子(取自Google Play):
正如您在图片中看到的,有两种不同的卡片类型,具有不同的布局(忽略橙色按钮)。有没有办法实现类似的事情,并且卡片在同一个RecyclerView?
【问题讨论】:
-
本指南可能会有所帮助 -- guides.codepath.com/android/…
标签: java android xml android-layout android-cardview