我在使用BaseAdapter实现填充GridView时遇到了一些困难。 基于以下示例,我对BaseAdapter的工作方式提出了一些问题:http://developer.android.com/resources/tutorials/views/hello-gridview.html
在我的实现中,我的BaseAdapter.getCount()方法返回130.因此我希望每次计数都调用一次getView()方法。但是,据我所知,getView()只调用了大约70次....为什么会这样?
如果使用getView()在网格中的每个位置构造View对象,那么返回Object的getItem()的目的是什么?
最后,我希望我的网格宽10列,高13行。要实现这一点,我只需将android:numColumns属性设置为10?
理解这一点可以获得任何帮助。
感谢。
答案 0 :(得分:1)
但是,据我所知,getView()只被调用了大约70次....为什么会这样?
在视图呈现到屏幕时生成视图
如果使用getView()在网格中的每个位置构造View对象,那么返回Object的getItem()的目的是什么?
< / LI>
getItem(int position)
获取与数据集中指定位置关联的数据项。
如描述所述,它返回与该位置相关联的基础数据,而不是相同位置的 View 。
android:numColumns setNumColumns(int)定义要显示的列数。
这里的描述很明确。
顺便说一句,最后一个问题是你可以轻松测试自己而不是在这里问...