activity的跳转通过intent可以简单实现,但是要实现fragment的跳转就不行了,我们可以通过回调函数来实现:
代码如下:
fragmen是依附于activity的,主activity中的代码
//定义一个接口
public interface FragmmentCallback{
//这是回调函数
public void gotoFragment(ViewPager viewPager);
}
private FragmmentCallback fragmmentCallback;
public void setFragmentCallback(FragmmentCallback fragmmentCallback){
this.fragmmentCallback = fragmmentCallback;
}
public void forSkip(){
if(fragmmentCallback!=null){
fragmmentCallback.gotoFragment(vp_main);
}
}
然后在需要跳转的fragment中点击跳转代码:
((MainActivity) mActivity).setFragmentCallback(new FragmmentCallback() {
@Override
public void gotoFragment(ViewPager viewPager) {
//fragment传递数据
// mActivity.setFragmentArgu(string);
viewPager.setCurrentItem(2);
}
});
((MainActivity) mActivity).forSkip();
代码如上。拿到viewPager对象就可以设置自己所需要跳转到的fragment,setCurrentItem(int position),//这里的position就是需要跳转到的目标fragment
网友评论