Fragment调用Activity方法

版权声明:版权为博主所有,如需转载,请注明来源 https://blog.csdn.net/qq_38508087/article/details/88419257

        前言:每个项目都会遇到fragment和activity相互调用的方法,因为项目中使用了EventBus,但是EventBus好像只是针对activity的,在fragment不太好使,亲测无效,下面介绍几个比较简单的方法:

       在xxxActivity里面有一个方法xxMethod(),在xxxFragment里面调用:

       一:直接调用:

            xxxActivity activity= (xxxActivity) getActivity();
            activity.test();

      二:接口回调:

           xxxFragment里面定义接口

           public interface xxxInterface{

                      void getXXXMethodForActivity();

           }

           让xxxActivity实现xxxInterface接口,实现getXXXMethodForActivity方法,在里面TODO:做你的逻辑;然后在xxxFragment里面调用该方法:

     if(getActivity()instanceof xxxInterface){

          ((xxxInterface)getActivity()).getXXXMethodForActivity();

     }

就这样就可以完美实现fragment调用activity里面的方法了,如有疑问,请联系:

邮箱:[email protected]

博客:https://blog.csdn.net/qq_38508087

github:https://github.com/Jack-zhang-quan

          

   

        

猜你喜欢

转载自blog.csdn.net/qq_38508087/article/details/88419257