我从手册和互联网上阅读了许多解释getView方法的教程,但我不明白为什么他们会使用它。 有人可以用一些例子或片段向我解释一下吗?
答案 0 :(得分:13)
getView()用于构造或重用AdapterView的子项。 AdapterView是一个包含多个项目的视图。例如,ListView包含一些具有相同(或可能不)结构的项。 getView()用于在某个位置构建View并用数据填充它。
getItem()用于获取为指定的View项提供数据的项。 例如,如果您有文本项的ListView,则getItem()必须返回String或CharSequence。这是为了方便起见,例如在onItemClickListener
中@Override
public void onItemClick(AdapterView<?> av, View view, int pos,
long arg3) {
String selectedText = (String) av.getItemAtPosition(pos);
// or av.getAdapter().getItem(pos);
}
答案 1 :(得分:12)
getItem()
返回项目的数据对象。它提供了一种访问适配器中数据的方法。例如,您的数组适配器包含字符串元素,getItem()
返回一个字符串对象。