这几天被一个问题弄昏了头,就是在viewpager下边有个按钮,点击按钮可以刷新viewpager,里面大概有1000+个fragment,而且都是一个fragment只是数据不一样。点击按钮刷新的时候需要重新for循环new Fragment,然后调用adapter.notifyDataSetChanged()或者重新new adapter()都不会刷新vp,然后百度看了看说需要remove掉vp上的所有fragment在重新notifyDataSetChanged就可以了。 在刷新之前remove,再刷新就可以了,但是再次点击按钮刷新会秒退。 莫名其妙,而且没有行数,看了看百度意思是,在fragment为null的时候调用了remove或者show的方法,但是调试里面并没有fragment为null的,整整弄了两三天一位大神一句话搞定,"adapter继承FragmentStatePagerAdapter试试"。 然后我就把继承换了一下,把第一张图片上的remove的代码删掉,就可以了,这坑是真的深啊。