首页 > 移动平台 > 详细

Android给Viewpager默认指定页

时间:2019-06-21 00:47:39      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:for   tst   tails   exceptio   col   找到   viewpager   except   etc   

上结果代码

private void setViewPaperItem(int position) {
        try {
            Class c = Class.forName("android.support.v4.view.ViewPager");
            Field field = c.getDeclaredField("mCurItem");
            field.setAccessible(true);
            field.setInt(viewPagerMain, position);
        } catch (Exception e) {
            e.printStackTrace();
        }
        adapter.notifyDataSetChanged();
        viewPagerMain.setCurrentItem(position);
    }

其实思路是这样的。为什么我不设置currentitem的时候,直接默认了0,那就从这个地方入手找找看。在然后就是,我什么都不设置,直接getCurrentItem() ,这个值就是默认值,从这里入手,找到默认值是mCurItem的值,再到ViewPager的源码里找找看。是在哪里设置了mCurItem的初始值。找到位置了,那就修理一下,你不是设置adapter的时候,默认为0 了吗? 那好,等你设置完,我再给你改成我希望的position。 怎么改? 反射。

引用:https://blog.csdn.net/shoneworn/article/details/81082519

Android给Viewpager默认指定页

标签:for   tst   tails   exceptio   col   找到   viewpager   except   etc   

原文:https://www.cnblogs.com/derekhan/p/11062190.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 bubuko.com 版权所有 鲁ICP备09046678号-4
打开技术之扣,分享程序人生!
             

鲁公网安备 37021202000002号