美文网首页
Viewpagr中Fragment内按钮点击切换另一个Fragm

Viewpagr中Fragment内按钮点击切换另一个Fragm

作者: 我不爱吃柚子c | 来源:发表于2018-08-23 10:05 被阅读0次

    项目中遇到viewpagr配合两个fragment的效果,之前都是在viewpagr页面做切换交互,现在是在fragment内有个按钮,点击后切换到另一个.尝试了fragment切换方法,麻烦且需要做多实例等操作.

    解决办法

    在viewpagr的FragmentActivity中做以下代码操作:假设该FragmentActivity命名为LoginActivity

    1, 实现该接口全局
    private IntentFragmentInterface mIntentFragmentInterface;
    2,实现跳转fragment的接口
    public interface IntentFragmentInterface {
         //fragment跳转方法
          void jumpFragment(ViewPager viewPager);
      }
    3,实现实例并调用接口实现的方法
    public void setFragmentjumpInterface(IntentFragmentInterface intentfragmentInterface) {
          mIntentFragmentInterface = intentfragmentInterface;
      }
    4,fragment 跳转执行
     // Fragment跳转执行   
      public void jumpToFragment() {
          if (mIntentFragmentInterface != null) {
              mIntentFragmentInterface.jumpFragment(vpLogin);
          }
      }
    

    fragment中的切换调用方法

    textview.setOnClickListener(new View.OnClickListener() {
              @Override
              public void onClick(View v) {
                    LoginActivity loginactivity= (LoginActivity)getActivity();
                    loginactivity. setFragmentjumpInterface(new LoginActivity. IntentFragmentInterface() {
                      @Override
                      public void jumpFragment(ViewPager viewPager) {
                          //setCurrentItem(0);orsetCurrentItem(1);是切换的页面,第二个fragment只有这一处更改,别的全完一样
                          viewPager.setCurrentItem(0);
                      }
                  });
                  loginactivity. jumpToFragment();
              }
          });
    
    

    整体代码就那么多,可用.

    相关文章

      网友评论

          本文标题:Viewpagr中Fragment内按钮点击切换另一个Fragm

          本文链接:https://www.haomeiwen.com/subject/lkkpiftx.html