点击button1进入了button2界面,1.如果不点击BUTTON2 的话,此时按下BACK 可以返回BUTOON1的界面
2.如果点击BUTTON2的话,此时去销毁活动(无论用BACK 还是代码中的Finish方法,此时都会直接强退程序。
//BUTTON2 代码
Button button2= (Button) findViewById(R.id.button_2);
button2.setOnClickListener(new View.OnClickListener() {
@Override//出现的情况: 进入button2后 若没有点击BUTTON2 按下BACK后会退回button1 界面
// 若点击了Button2 后销毁活动将不会退回BUTTON界面,而是直接销毁全部活动即强退程序
//可能问题 空指针异常
//
public void onClick(View v) {
Intent intent=new Intent();
intent.putExtra("date_return","Hello FirstActivity");
setResult(RESULT_OK, intent);
finish();
//界面1的 返回数据给上一个活动代码
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch (requestCode){
case 1:
if (resultCode==RESULT_OK){
String returnedData = data.getStringExtra("data_extra");
Log.d("FirstActivity", returnedData);
}
break;
default:
}
}
Intent intent=new Intent();
intent.putExtra("date_return","Hello FirstActivity");
setResult(RESULT_OK, intent);
finish();
你跳转的时候不是把第一个界面给杀死了吗? 在第二个界面再返回就是退出程序了吧
String returnedData = data.getStringExtra("data_extra");
Log.d("FirstActivity", returnedData);
returnedData 这个获取到的值应该时null ,你的key貌似写错了。
Log不能打印null.