Java复习:Fragment和Activity通信的几种方式

1.直接调用

((MainActivity)getActivity()).doABC();

2.使用接口

 Activity实现对应接口,Fragment创建的时候拿到Activity的对象,调用相关方法(其实这个和1差不多,只是用了接口来规范)

public class MainActivity extends BaseActivity implements Callback {
    @Override
    public void doABC() {
        //do
    }
}
public class MyFragment extends BaseFragment {

    private Callback mCallback;

    @Override
    public void onAttach(Context context) {
        super.onAttach(context);
        mCallback = (Callback) getActivity();
        mCallback.doABC();
    }
}

3.使用广播

 优点:非常灵活 缺点:相较于直接调用要多些几行,如果不使用本地广播的话有可能会信息泄露

4.EventBus

 优点:灵活简单 缺点:引入了第三方库

你可能感兴趣的:(Java基础复习)