gpt4 book ai didi

java - 实现 CustomListAdapter android 时无法使用 List

转载 作者:行者123 更新时间:2023-12-02 11:25:52 25 4
gpt4 key购买 nike

我有一个多态层次结构中的动物对象集合(即动物>爬行动物>蛇)。我想创建一个 ListView ,其中列表中的每个项目根据对象类型使用不同的布局进行膨胀(例如,爬行动物的一个项目布局,猫的一个项目布局,灵长类动物的一个项目布局等)。此 Activity 只是类别,而不是实际的动物列表。所以我只想创建一个“组”项目。

为此,我尝试使用所有可能的动物类型的列表(同样,爬行动物、灵长类动物、猫等)。以 List 集合的形式。如何使用 CustomListAdapter 来完成此任务?它似乎不想让我给适配器一个字符串列表,它想要一个对象列表。

最佳答案

只需使用 switch 或 if 语句检查类型并相应地膨胀:

下面是示例代码:

  @Override 
public View getView()
{
View row = null;
if (activity.equalsIgnoreCase("Ni_activity") || activity.equalsIgnoreCase("Current_NI_Activity") || activity.equalsIgnoreCase("Ni_Test_Activity")) {
row = inflater.inflate(R.layout.ni_spinner_row, parent, false);
} else if (activity.equalsIgnoreCase("RFTestActivity")) {
row = inflater.inflate(R.layout.spinner_row, parent, false);
} else if (activity.equalsIgnoreCase("SiteInfoFragment") || activity.equalsIgnoreCase("LayerInfoFragment")) {
row = inflater.inflate(R.layout.site_frag_spinner, parent, false);
}

TextView tvCategory = (TextView) row.findViewById(R.id.tvCategory);
tvCategory.setTypeface(null, Typeface.BOLD);
try {
tvCategory.setText(data.get(position));
} catch (Exception e) {
e.printStackTrace();
}
return row;
}

关于java - 实现 CustomListAdapter android 时无法使用 List<String>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49638387/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com