同一个Activity下的fragment之间的跳转

来源:互联网 发布:关于新生儿的软件 编辑:程序博客网 时间:2024/04/27 20:31

使用接口回调的方法,关联的类:fragment1,fragment2,FatherActivity

步骤:

1,在当前fragment1中定义一个接口,并且创建一个抽象方法。

/** * 定义一个接口 * 用于向父acticity传值 */private onClickActiteListner mListener;public interface onClickActiteListner{     void setOnClickShopListner(int index);}

2,在fragment1中,oncreate()方法之前(onAttach()中)添加如下代码,给接口对象赋值

@Overridepublic void onAttach(Context context) {    super.onAttach(context);    mListener = (onClickActiteListner) context;}

3,在fragment1中,触发事件的地方调用接口,并根据具体操作传值,该值将传递到实现该接口的类中,并由实现的方法接收。

mListener.setOnClickShopListner(2);

4,在FatherActivity中,趋实现自个这个接口,并在实现的方法中完成切换fragment2的操作

/** * 实现回调方法,跳转到另一个fragment * @param index fragment1传递过来的参数,给根据传递不同的参数做不同的操作 */@Overridepublic void setOnClickShopListner(int index) {    if (index ==2){        initActiteFragment();//显示活动的fragment    }else if (index ==3){        initFoumFragment();    }}






0 0