Activity与Fragment传递参数的问题

1、开发工具与关键技术:Eclipse、AndroidStudio
2、撰写时间:2020年05月18日

   Activity作为安卓四大组件之一,而Fragment是碎片、片段;是与Activity紧密联系使用,不能独自存在。它必须嵌入到Activity中才可以使用,而且Fragment的生命周期直接受所在的Activity的影响而影响。正是Activity有了Fragment的存在,使得UI设置起来灵活方便。下面我带大家了解一下,
Activity与Fragment之间是如何传递参数的。

Activity与Activity的传递参数是如何实现的,方法一(直接添加)

第一个Activity

//按钮的 点击事件 
btsubmit.setOnClickListener(new View.OnClickListener() {
  @Override
   public void onClick(View v) {
  //跳转到主页面页面 (注:LoginActivity是当前的Activity,MainActivity目标的Activity)
   Intent intent=new Intent(LoginActivity.this,MainActivity.class);
   //添加参数
   intent.putExtra("content","大家好,");
   intent.putExtra("name", "我是小明同学");
   startActivity(intent);
    }
});

第二个Activty

//获取参数
String content = getIntent().getStringExtra("content");
String name = getIntent().getStringExtra("name");

Activity与Activity的传递参数是如何实现的,方法二(通过Bundle传递)

第一个Activity

//跳转到主页面页面 (注:LoginActivity是当前的Activity,MainActivity目标的Activity)
Intent intent=new Intent(LoginActivity.this,MainActivity.class);
//通过Bundle 来传递多个不同类型的数据
Bundle bundle=new Bundle();
bundle.putInt("int",1);
bundle.putString("content","大家好,");
bundle.putString("name", "我是小明同学");
intent.putExtras(bundle);
startActivity(intent);

第二个Activty

 //获取 bundle中的数据
 Bundle bundle = new Bundle();
 bundle = this.getIntent().getExtras();
 String Content=bundle.getString("content");
 String Name=bundle.getString("name");
 Integer Id=bundle.getInt("int");

Activity与Fragment的传递参数又是如何呢!(通过Bundle传递)

Activity中的代码

//activity 向fragment中传递参数(OrderFragment 目标Fragment)
OrderFragment myFragment = new OrderFragment();
Bundle bundle = new Bundle();
bundle.putString("DATA","参数");//这里的values就是我们要传的值
bundle.putInt("int",1);
myFragment.setArguments(bundle);

Fragment中的代码

//   然后在Fragment中的onCreatView方法中,通过getArgments()方法,获取到bundle对象,然后通过getString的key值拿到我们传递过来的值
  Bundle bundle = getArguments();
String data = bundle.getString("DATA");
  Integer number =bundle.getInt("int");

   Fragment跳到Activity又是如何传递参数的呢!这个大家有没有想过?其实呢和Activity跳到Activity的方式是一样的,在这里就不再重复了。到这里如何你都了解了,那么在Activity与Fragment之间的跳转传递参数也没什么问题了。

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值