定义接口

public interface DataCallBack {
    void test(); 
}

方法一

Activity 的onAttachFragment中去 转换获取callBack对象

Activity

@Override
    public void onAttachFragment(Fragment fragment) {
        super.onAttachFragment(fragment);
        if (fragment instanceof DataCallBack) {
            mDataCallBack = (DataCallBack) fragment;
        }
    }
...
	mDataCallBack.test();

方法二

Fragment中onattach中设置callBack对象

Fragment

@Override
public void onAttach(@NonNull Context context) {
        super.onAttach(context);
        if (getActivity() != null && getActivity() instanceof XXXActivity) {
            ((XXXActivity) getActivity()).setDataCallBack(this);
        }
    }

Activity

public setDataCallBack(DataCallBack dataCallBack){
	mDataCallBack = dataCallBack;
}
...
	mDataCallBack.test();
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐