viewpager 为了更好的用户体验,比如一共有5个fragment的时候,当前显示第1个fragment时,其实第二个fragment也已经加载为可见了,这就造成,当第一个fragment中的一个坐标为100,100,的view有点击事件,,,,第二个fragment也有相同坐标为100,100的view也有点击事件时。。
此时就可能出现,点击第一个fragment或者第二个fragment其中一个viiew的点击事件无响应。
解决思路,因为viewpager中fragment,基本有2个以上的onstart会执行,也就是对用户可见,我们可以在onstart中,加上判断,如当前fragment的index不是viewpager的当前页,则隐藏布局。
同时实现viewpager的
setOnPageChangeListener接口
@Override public void onPageScrollStateChanged(int arg0) { //arg0 ==1的时表示正在滑动,arg0==2的时表示滑动完毕了,arg0==0的时表示什么都没做。
我们在arg=2的时候,将viewpager当前
list.get(viewPager.getCurrentItem()).getRel().setVisibility(View.VISIBLE);
即可。