android activity 开启 数据传递
2016-03-27 07:52
405 查看
1、只需在firstActivity中,传值给secondActivity
1.1、在传值的Activity中:
1.2 在接收的Activity中
Intent intent = getIntent();
String receiveString = intent.getStringExtra("extra_data");
2、在firstActivity中开启secondActivity,并需要secondActivity回传值的情况
2.1 在firstActivity中用starActivityForResult()开启secondActivity
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
startActivityForResult(intent, 1);
//参数1,表示是哪个Activity返回的数据,需要在onActivityResult()中判断
2.2 在secondActivity中
Intent intent = new Intent();
intent.putExtra("data_return", "Hello FirstActivity");
setResult(RESULT_OK, intent);
//setResult()函数的第一个参数对应操作结果,一般取RESULT_OK,RESULT_CANCEL
2.3 在firstActivity中,重写onActivityResult()函数,用于接收处理结果,和返回的数据
protected void onActivityResult(int requestCode, int resultCode, Intent data){
switch (requestCode) {
<span style="white-space:pre"> </span>case 1:
<span style="white-space:pre"> </span>if (resultCode == RESULT_OK) {
<span style="white-space:pre"> </span>String returnedData = data.getStringExtra("data_return");
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>break;
<span style="white-space:pre"> </span>default:
}
}
//requestCode对应startActivityForResult(intent, 1)中的1,表示返回数据的是哪个Activity;
resultCode对应setResult(RESULT_OK, intent)的第一个参数,表示操作返回的结果;
data对应返回数据的intent;
2、在firstActivity中开启secondActivity,并需要secondActivity回传值的情况
2.1 在firstActivity中用starActivityForResult()开启secondActivity
1.1、在传值的Activity中:
String data = "Hello SecondActivity"; Intent intent = new Intent(FirstActivity.this, SecondActivity.class); intent.putExtra("extra_data", data); startActivity(intent);
1.2 在接收的Activity中
Intent intent = getIntent();
String receiveString = intent.getStringExtra("extra_data");
2、在firstActivity中开启secondActivity,并需要secondActivity回传值的情况
2.1 在firstActivity中用starActivityForResult()开启secondActivity
Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
startActivityForResult(intent, 1);
//参数1,表示是哪个Activity返回的数据,需要在onActivityResult()中判断
2.2 在secondActivity中
Intent intent = new Intent();
intent.putExtra("data_return", "Hello FirstActivity");
setResult(RESULT_OK, intent);
//setResult()函数的第一个参数对应操作结果,一般取RESULT_OK,RESULT_CANCEL
2.3 在firstActivity中,重写onActivityResult()函数,用于接收处理结果,和返回的数据
protected void onActivityResult(int requestCode, int resultCode, Intent data){
switch (requestCode) {
<span style="white-space:pre"> </span>case 1:
<span style="white-space:pre"> </span>if (resultCode == RESULT_OK) {
<span style="white-space:pre"> </span>String returnedData = data.getStringExtra("data_return");
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>break;
<span style="white-space:pre"> </span>default:
}
}
//requestCode对应startActivityForResult(intent, 1)中的1,表示返回数据的是哪个Activity;
resultCode对应setResult(RESULT_OK, intent)的第一个参数,表示操作返回的结果;
data对应返回数据的intent;
2、在firstActivity中开启secondActivity,并需要secondActivity回传值的情况
2.1 在firstActivity中用starActivityForResult()开启secondActivity
相关文章推荐
- 已解决的问题——Application package 'AndroidManifest.xml' must have a minimum of 2 segments.
- Android图形graphics
- Android 解析JSON格式数据
- 队列在Android中是使用
- Android IPC 之 AIDL(一)
- MVP for Android: 如何来设计Presenter层(译)
- Glide大战Picasso
- 【Android Studio】几款好用的Android Studio插件
- 【android studio】超实用技巧
- Android中Handler源码解析(二)
- 认识Android这两年
- Android界面的View以及ViewGroup的区别
- Android自定义Dialog多选对话框(Dialog+Listview+CheckBox)
- Android(JAVA)之单例模式
- 编译可在Android上运行的pcre库
- 编译可在Android上运行的libffi库
- Qt for Android 开发大坑
- Android的selector,背景选择器
- 分析一个android程序从建立到启动的过程
- Android中Activity转场