美文网首页
Fragment 与 Activity/Fragment 的数据

Fragment 与 Activity/Fragment 的数据

作者: YbSTGing | 来源:发表于2017-09-18 14:16 被阅读99次

Activity ---> Fragment

1.设置Bundle
  1. 在Activity中,通过设置如下的方法。
 Bundle args = new Bundle();  
 args.putString("name", name);
 BaseFragment fragment = new CollectionFragment();
 fragment.setArguments(args);  
  1. 在Fragment中,通过 Bundle bundle = getArguments(); 获取参数

Fragment ---> Activity

传递数据到承载Fragment的Activity

  1. Fragment中通过 getActivity()方法获取到Activity,通过 activity.xxx()方法来设置数据。

传递数据到新的 Activity

  • 没有数据返回
    Fragment给Activity传数据通过 startActivity() 方法既可,数据存入intent之中。

  • 有数据返回
    如果 Fragment 给 Activity 中传递数据需要有回调方法的时候,

  1. Fragment之中需要调用 this.startActivity() 方法,不能用 getActivity.startActivity()方法。
  2. Activity 中 setResult
 Intent intent = getIntent();
 intent.putExtra("cityNameFromActivity",localtion);
 setResult(ProprietaryTradingFragment.CITYREQUESTCODE,intent);
  1. Fragment 中重写 onActivityResult() 方法,进行数据接收。
    如果Fragment所在的Activity中已经有了 onActivityResult()方法,Fragment中的 onActivityResult()方法一定要加上 super.onActivityResult(requestCode, resultCode, data);方法

Fragment ---> Fragment

参考文章
1.启舰

相关文章

网友评论

      本文标题:Fragment 与 Activity/Fragment 的数据

      本文链接:https://www.haomeiwen.com/subject/voqbsxtx.html