1、MainActivity里面的主要代码
(1)当需要返回值时,那么在启动另一个Activity时要用到 startActivityForResult ( intent , REQUEST_CODE ) ;
注意第二个参数是请求的int类型的值,这个值要在onActivityResult ()方法中和requestCode 做判断的,
由此来判断是启动的某个Activity。
(2)onActivityResult ()方法中的第二个参数就是 SecondActi vity 传回来的键,
第三个参数就是 SecondActi vity 传回来的键对应的值。
final int RESULT_CODE=101; final int REQUEST_CODE=1; public void enterSecond(View view) { Intent intent=new Intent(this,SecondActivity.class); startActivityForResult(intent, REQUEST_CODE); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { Log.i(TAG, "onActivityResult"+"requestCode"+requestCode+"n resultCode="+resultCode); if(requestCode==REQUEST_CODE) { if(resultCode==RESULT_CODE) { String result=data.getStringExtra("second"); textView.setText(result); } } super.onActivityResult(requestCode, resultCode, data); }
2、 SecondActi vity 类中的代码:
这个里面的 RESULT_CODE 、intent 分别跟上段代码中onActivityResult ()方法中的第二个、第三个参数相对应。
final int RESULT_CODE=101; public void closeButton(View view) { Intent intent=new Intent(); intent.putExtra("second", "I am second!"); setResult(RESULT_CODE, intent); finish(); }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)