解决方案 »

  1.   

    viewPager.setCurrentItem(viewPager.getCurrentItem() + 1, true);
      

  2.   

    问题是我在page1的Activity中响应事件,操作不了viewPager
      

  3.   

    问题是我在page1的Activity中响应事件,操作不了viewPager你将那个viewpager设成全局变量,调用它。。
      

  4.   

    看不到图,但是根据你说的,可以定义一个接口MainActivity实现回调接口,注册到管理类上,在pageaActivity上面执行操作的时候,可以调用管理类的接口回调就可以了。
    如:
    1.接口是NeedPageChanged,回调方法是pageChanged(int page)
    public interface NeedPageChanged{
            public void pageChanged(int page);
    }
    2.定义管理类PageChangedManager.
    public class PageChangedManager{
            ......//可以采取单例
            private NeedPageChanged listener;
            public void setNeedPageChanged(NeedPageChanged npc){
                    listener = npc;
            }
            public void sendPageChanged(int page){
                    listener.pageChanged(page);
            }
    }
    3.让MainActivity实现NeedPageChanged接口,并注册到PageChangedManager上。
    4.在page1Activity中调用PageChangedManager的sendPageChanged,这样就可以把数据发到MainActivity上面了。
      

  5.   

    为了一次调用不用写个接口吧,感觉好浪费。在mainactivity中写个public方法调用就好了。。
      

  6.   


    感谢写了这么多代码
    那管理类PageChangedManager的对象放在哪里呢,有点想不通
      

  7.   

    我的困难 就是在这个“直接调用”上,viewPager里的Activity如何访问到MainActivity里的方法 
      

  8.   

    用回调实现了
    定义一个接口
    在MainActivity里实现接口,即切换页面功能
    把this传进page1里
    然后在page1里调用接口就可以了想通了就不难了