首页 > 代码库 > 返回数据给上一个活动
返回数据给上一个活动
1. 当点击第二个活动的时候,返回到第一个活动。传数据。
// 第一个activity@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // setContentView(R.layout.activity_main); // 创建视图 setContentView(R.layout.my_layout); // 找到对应的button来监听事件 findViewById(R.id.butStartAnotherAty).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent i = new Intent(MainActivity.this, AnotherAty.class); // 这个 1 是你传过去的一个标示 startActivityForResult(i, 1); //使用可以返回数据的方式来启动新的activity } }); System.out.println("onCreate"); } // 接受从第二个activity返回来的数据方法,会在 onStart 前执行 @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { switch (requestCode) { case 1 : // 这个是 startActivityForResult 方法启动活动的时候传过去的标示 if (resultCode == RESULT_OK) { String returnData = data.getStringExtra("data_return"); System.out.print(returnData); } break; default: break; } }//第二个activityprivate TextView tv; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_another_aty); findViewById(R.id.returnMainActivity).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(); intent.putExtra("data_return", "hello MainActivaty"); setResult(RESULT_OK, intent); // 设置返回 intent finish(); // 销毁 } }); }
2. 点击返回按钮的时候,第二个activity传送数据到第一个activity
// 第一个activity和上面的一样 // 第二个activity只需要监听这个back键的方法就好了 // 点击 Back键回到第一个Activity @Override public void onBackPressed() { Intent intent = new Intent(); intent.putExtra("data_return", "hello MainActivaty for onBackPressed"); setResult(RESULT_OK, intent); // 设置返回 intent finish(); }
返回数据给上一个活动
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。