ArrayAdapter getView()方法如何工作?

我想要做一个ArrayAdapter来显示图像和文本。 如果可能,我不想要示例。 我希望有人解释我如何getView()作品。

谢谢。

getView()是适配器的主要部分。 它返回View ,将显示为您的列表/网格/ gallary /使用适配器项目的任何视图。 它会在您滚动视图时触发(例如列表)。

所以你应该做的第一件事就是创build自定义适配器。 您可以从BaseAdapter扩展它。 然后你需要创build一些数据来显示(或从外部传递给适配器 – 它的更好的解决scheme)。

之后,重写getView()方法,并确保返回您的自定义视图。 在你的情况下,它应该是一个带ImageViewTextViewLayout (并且不要忘记填充它们)。

您可以从以下方面了解更多

BaseAdapter您有一个AdapterViewListView调用的AdapterView函数。

您需要重写BaseAdapter的getCount方法以将总视图数返回到diplay。

而在getView中,你会得到如下的东西:

 public View getView(int position, View convertView, ViewGroup parent) 
  1. 位置:

    每次显示 getView都会被调用。

  2. convertView

    由于getView会多次调用新的视图,每次都是昂贵的,因此列表视图为您提供了以前创build的视图之一以供重用。

  3. 对父视图的引用,这个视图将是子视图。

ArrayAdapterBaseAdapter的子类,它在构造函数中使用ArrayList (或数组)。 并为您覆盖getCount

所以你需要实现的是getView