码迷,mamicode.com
首页 > 其他好文 > 详细

向上一个活动传递数据

时间:2017-04-04 20:15:49      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:div   步骤   nis   9.png   start   http   现象   can   undle   

实验名称:返回数据给上一个活动

实验现象:第二个活动按键点击进入第一个活动,出现Hello FirstActivity

使用技术:startActivityForReques方法、onActivityRequest()方法

步骤:

1、新建一个项目,创建主活动,加载布局,布置一个button

技术分享
技术分享

2、再次新建一个活动,加载布局,同时放置一个button

技术分享

3、修改第一个活动的按键点击事件

  1. @Override
  2. protected void onCreate(Bundle savedInstanceState) {
  3. super.onCreate(savedInstanceState);
  4. setContentView(R.layout.activity_main);
  5. Button button=(Button) findViewById(R.id.button1);
  6. button.setOnClickListener(new View.OnClickListener(){
  7. @Override
  8. public void onClick(View v){
  9. Intent intent=new Intent(MainActivity.this,Main2Activity.class); //启动第二个活动
  10. startActivityForResult(intent,1); //启动这个intent,启动请求码是1
  11. }
  12. });
  13. }

4、修改第二个活动的按键点击事件

  1. @Override
  2. protected void onCreate(Bundle savedInstanceState) {
  3. super.onCreate(savedInstanceState);
  4. setContentView(R.layout.activity_main2);
  5. Button button2=(Button) findViewById(R.id.button2); //获得按键值
  6. button2.setOnClickListener(new View.OnClickListener() { //设置按键的监听事件
  7. @Override
  8. public void onClick(View view) { //按键点击事件
  9. Intent intent=new Intent(); //构建一个Intent
  10. intent.putExtra("data_return","Hello FirstActivity"); //数据内容
  11. setResult(RESULT_OK,intent); //向上一个活动返回数据
  12. finish(); //结束这个活动
  13. }
  14. });
  15. }

setResult()方法:接收2个参数,第一个参数用于向上一个活动返回处理结果,一般只使用RESULT_OK或者RESULT_CANCELED这2个值。第二个参数一般则把带有数据的Intent传递回去。

5、在第一个活动的onActivityResult()方法中重写,得到返回的数据

  1. @Override
  2. protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  3. switch(requestCode){
  4. case 1:
  5. if(resultCode==RESULT_OK){
  6. String returnedData=data.getStringExtra("data_return");
  7. Log.d("FirstActivity",returnedData);
  8. }
  9. break;
  10. default:;
  11. }
  12. }

onActivityResult()方法:带有3个参数,第一个参数是requestCode,即我们在启动活动时传入的请求码。第二个参数是resultCode,即我们在返回数据时传入的处理结果。第三个参数data,即携带者返回数据的Intent。

6、运行程序

技术分享

附件列表

     

    向上一个活动传递数据

    标签:div   步骤   nis   9.png   start   http   现象   can   undle   

    原文地址:http://www.cnblogs.com/aqyl/p/6666148.html

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!