Activity向Fragment传值也比较简单,把你要传递的值通过put×××传递进Bundle中,然后调用Fragment的setArguments把要传递的Bundle装载进去,这里数据可以是String
int,或者是序列化的一个对象值,然后在接收方,调用bundle的get×××得到后,简单解析处理即可,下面我贴上一个传递对象的实例
传递数据的Activity中
HeartShareItemFram itemFram = new HeartShareItemFram(); //new一个 Fragmen的实例
Bundle bundle = new Bundle();
bundle.putSerializable("item",mDatas.get(position)); //被传递的对象一定要实现Serializable接口
itemFram.setArguments(bundle);
getFragmentManager()
.beginTransaction()
.replace(R.id.heart_content,itemFram,"item")
.addToBackStack("item")
.commit();
被传递的对象
class HeartShare extends BmobObject implements Serializable {}
Bundle bundle = getArguments();
mDatas = (HeartShare) bundle.getSerializable("item"); //把Bundle得到的数据强转为被传递的对象类型
MyL.e(mDatas.getContent());
//其他数据类似的利用get方法得到,不再具体详写