以我正在学习的书为例
public static final Drink[] drinks = {
new Drink ("Latte", "A couple of espresso shots with steamed milk ",
R.drawable.latte),
new Drink ("Cappuccino", "Espresso, hot milk, and a steamed milk foam",
R.drawable.cappuccino),
new Drink ("Filter", "Highest quality beans roasted and brewed fresh",
R.drawable.filter)
};
首先,我们让这个方法在 Drink 类中返回一个数组,并且在一个 Activity 中,我们应该使用适配器数组从中检索数据,代码如下:
ArrayAdapter<Drink> listAdapter= new ArrayAdapter<>(this,
android.R.layout.simple_list_item_1, Drink.drinks);
ListView listDrinks = (ListView) findViewById(R.id.list_drinks);
listDrinks.setAdapter(listAdapter);
我不明白的是为什么这个 ArrayAdapter 只检索饮料的名称而不是 ListView 中的全部详细信息?我在代码中看不到我们指定仅检索名称的任何地方。
最佳答案
如果您点击 android.R.layout.simple_list_item_1
布局,您可以看到:在该布局中,它仅包含 1 个文本字段,因此它只能显示您的一个属性对象。
如果您想显示更多信息或自定义 View ,请尝试以下操作:
关于java - 为什么 ArrayAdapter 只从数组的每个成员中检索一个对象,而不是整个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62287732/