本篇博文最后修改时间:2016年5月3日,23:40。
一、简介
本篇介绍如何向下一个活动传递数据。
二、实验平台
系统版本:Windows7 家庭普通版 32位操作系统。
三、版权声明
博主:思跡
声明:喝水不忘挖井人,转载请注明出处。
原文地址:http://blog.csdn.net/omoiato
联系方式:315878825@qq.com
Java零基础入门交流群:541462902
四、向下一个活动传递数据
Intent可以在启动活动的时候传递数据
在启动活动时传递数据的思路很简单,
Intent中提供了一系列putExtra()方法的重载,
可以把我们想要传递的数据暂存在Intent中,
启动了另一个活动后,只需要把这些数据再从Intent中取出就可以了。
1、将FirstActivity中的一个字符串,传递到SecondActivity中
button1.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View v)
{
String data = "Hello SecondActivity";
Intent intent = new Intent(FirstActivity.this,SecondActivity.class);
intent.putExtra("extra_data", data);
startActivity(intent);
}
});
这里我们还是使用显式Intent的方式来启动SecondActivity,
并通过putExtra()方法传递了一个字符串。
putExtra()方法接受2个参数,
第一个参数是键,用于后面从Intent中取值,
第二个参数才是真正要传递的数据。
2、在SecondActivity中将传递的数据取出,并打印出来
public class SecondActivity extends Activity
{
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.second_layout);
Intent intent = getIntent();
String data = intent.getStringExtra("extra_data");
Log.d("SecondActivity",data);
}
}
首先可以通过getIntent()方法获取到用于启动SecondActivity的Intent,
然后调用getStringExtra()方法,传入相应的键值,就可以得到传递的数据了。
ps:这里由于我们传递的是字符串,所以使用getStringExtra()方法来获取传递的数据,
如果传递的是整型数据,则使用getIntExtra()方法,
如果传递的是布尔型数据,则使用getBooleanExtra()方法,
以此类推。
3、查看LogCat打印信息
重新运行程序,在FirstActivity的界面点击一下按钮会跳转到SecondActivity。