android BaseAdapter 适配器中的getview()方法的调用者是谁?

androidGridView在加载数据的时候,所注册的BaseAdapter适配器中的getview()方法的调用者是谁?当getView()方法被调用过一次后,能否强... android GridView在加载数据的时候,所注册的BaseAdapter 适配器中的getview()方法的调用者是谁?
当getView()方法被调用过一次后,能否强制干预,调用并刷新某个特定的View?我需要这么做!
适配器模式中,getview()会在View被移动进可见范围时调用, 我怎么硬性干预,主动调用getView()呢?
展开
 我来答
那美克星网民
推荐于2016-12-02 · 超过21用户采纳过TA的回答
知道答主
回答量:38
采纳率:0%
帮助的人:29.5万
展开全部
getView是由framework调用的。
如果要framework调用getView(),可以尝试用BaseAdapter.notifyDataSetChanged ()方法试试。在家的破电脑,暂不能尝试。

GridView 主要是为了快速开方,很多地方要自定义不是很方便。如果要更多的自主操作,可以用下面的形式。
<ScrollView>
<LinearLayout android:orientation="vertical">
<LinearLayou android:orientation="horizontal">
</LinearLayout>
</LinearLayout>
</ScrollView>

----------
getView ,只是在childview从屏幕外移到屏幕中的时候会被调用。
当你移到倒数第二个childview的时候,实际上肯定是调用了最后一个childview的getView函数。
你可以试试在getVIew中加入
System.out.println("getView:"+position);
gaogaf
2011-10-10 · TA获得超过1289个赞
知道小有建树答主
回答量:610
采纳率:0%
帮助的人:362万
展开全部
没有必要主动调用,如果想调用,调用就好了,但这样的程序肯定不是一个好的程序。
android的一个根本思想就是回调,需要你来参与时,回调用相关的回调方法,你来填充。
而当你需要执行回调中的逻辑时,直接将该逻辑抽出,独立出来,需要调用的时候调用即可。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wjdlike
2011-10-12
知道答主
回答量:23
采纳率:0%
帮助的人:28.6万
展开全部
有一种情况是这样的:
一个gallery在设置自定义baseadapter之后,在gallery初始化时,会根据getCount的返回值int数值调用getView相应的次数.然后你自己滑动gallery时,每滑一次,gallery都会自动调用getview一次,但是滑到gallery最后一页时,它怎么地都不会去回调getview方法,这个真让人纠结,眼看业务功能就要实现了,被它给卡住了...咋回事啊?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhoukun8
2011-10-11
知道答主
回答量:25
采纳率:0%
帮助的人:15.4万
展开全部
自动就调用了,我们写业务逻辑就可以了

参考资料: http://cdjuhui.com

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式