Activity把值传递给Fragment
1)使用Bundle来传递参数
Bundle bundle = new Bundle();
bundle.putString(Constant.INTENT_ID, productId);
fragment.setArgument(bundle);
获取argument
@Override
public void onStart() {
super.onStart();
if (isAdded()) {//判断Fragment已经依附Activity
productId = getArguments().getString(Constant.INTENT_ID);
}
}
3)在activity中定义获取值得方法,在fragment中调用
public String getTitles(){
return "hello";
}
在fragment中调用
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
titles = ((MainActivity) activity).getTitles();//通过强转成activity,就可以获取到传递过来的数据
}
Fragment把值传递给Activity
使用接口回调来进行传值,在fragment中定义接口,在activity中实现接口,接口的参数可以用来传值
fragment之间的传值
在activity里面定义get和set方法,fragment来调用就可以了