【Android】安卓开发之activity如何传值到fragment,activity与fragment传值

时间:2021-06-07 09:03:13

作者:程序员小冰,GitHub主页:https://github.com/QQ986945193

新浪微博:http://weibo.com/mcxiaobing

大家知道,我们利用activity使fragment之间相互切换的时候,可能会遇到

activity中的值传送给某个fragment,就像activity跳转传值给另一个activity

所以,给大家说一下如何进行activity传值,fragment如何获得。

首先activity得代码是:

流程是:

(必须在fragmentTransaction.commit()之前完成):
1.创建一个fragment对象
2.创建一个Bundle 对象(其为键值对存储,可以理解为一个Map<K,V>): Bundle bundle = new Bundle();
3.向bundle中传值:bundle.putString("str","这是Activity传来的值");
4.将bundle通过setArguments(bundle)方法设置进fragment的对象:fragment的对象.setArguments(bundle);

详细代码是:

 Fragment01 fragment = new Fragment01();
Bundle bundle = new Bundle();
bundle.putString("str","这是Activity传来的值");
fragment.setArguments(bundle); fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction=fragmentManager.beginTransaction();
fragmentTransaction.replace(R.id.fm01id,fragment01);
fragmentTransaction.commit();

然后下面是fragment中获取到activity所传来的值:

String str = (String)getArguments().get(“str”);

好了到此结束。你应该学会了activity如何传值到fragment。

Activity与Activity之间传值详解请看:

http://blog.csdn.net/qq_21376985/article/details/51250460