viewpager获取当前view报空指针的解决方法

来源:互联网 发布:组播mac地址有什么用 编辑:程序博客网 时间:2024/04/26 07:27

因为需求,我需要获得viewpager当前的view

于是我采用以下写法

[java] view plain copy
  1. View currentView = mViewPager.getChildAt(mViewPager.getCurrentItem());  

然后我拿这个view去做其他的事,但是滑动超过3个view后,再拿这个view的时候发现是null, mViewPager.getCurrentItem()超过2时就是null了, 这说明viewpager是三个view重复利用

那怎么办呢?

转载请注明出处:http://blog.csdn.net/ethan_xue/article/details/7890888

通过谷歌百度的帮助,果断用findviewwithtag这个方法

在viewpager的listener里的onPageSelected()这个方法里为view设置tag

[java] view plain copy
  1. itemview.setTag(currentID);  

然后用的时候就只需要根据tag来find出来就好了

[java] view plain copy
  1. View currentView = mViewPager.findViewWithTag(mViewPager.getCurrentItem()  

参考文章:

http://www.coder007.net/questions/1401/androi-viewpaper-view-childview

http://www.apkbus.com/blog-90729-39689.html

http://blog.sina.com.cn/s/blog_7033e38201015kwe.html

0 0
原创粉丝点击