点击添加按钮之后-----弹出一个新的activity--------在新的activity将数据输入保存之后,关闭当前的activity回到之前的activity刷新内容
实现:使用onActivityResult
启动页: btnButton.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(MainActivity.this, SecondActivity.class); String str=txtEditText.getText().toString(); intent.putExtra("fromMain", str); // startActivity(intent); // 启动需要监听返回值的Activity,并设置请求码:requestCode startActivityForResult(intent, 1); }
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// 当otherActivity中返回数据的时候,会响应此方法
// requestCode和resultCode必须与请求startActivityForResult()和返回setResult()的时候传入的值一致。
if (requestCode == 1 && resultCode == SecondActivity.RESULT_CODE) {
Bundle bundle=data.getExtras();
String strResult = bundle.getString("result");
Log.i(TAG,"onActivityResult: "+ strResult);
Toast.makeText(MainActivity.this, strResult, Toast.LENGTH_LONG).show();
}
}
新页面关闭时
btnBack.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { Intent intent = new Intent(); intent.putExtra("result", txtContent.getText().toString()); setResult(RESULT_CODE, intent);// 设置resultCode,onActivityResult()中能获取到 finish(); } });
两个activity通过intent来通讯