Android中startActivityForResult怎么使用

   2025-02-22 5340
核心提示:在Android中,startActivityForResult()方法允许你启动一个新的Activity,并且在新的Activity结束后返回结果给调用它的Activity

在Android中,startActivityForResult()方法允许你启动一个新的Activity,并且在新的Activity结束后返回结果给调用它的Activity。

首先,在调用startActivityForResult()方法之前,你需要先准备好一个Intent对象,用于启动新的Activity。Intent对象包含了要启动的Activity的类名或者Action。

然后,调用startActivityForResult()方法来启动新的Activity,并传入Intent对象和一个用于标识返回结果的请求码(requestCode)。

int requestCode = 1; // 请求码可以是任意的整数Intent intent = new Intent(this, SecondActivity.class); // SecondActivity为要启动的ActivitystartActivityForResult(intent, requestCode);

在新的Activity中,当任务完成后,你可以通过调用setResult()方法来设置结果数据,并使用Activity的finish()方法来关闭当前Activity。

Intent resultIntent = new Intent();resultIntent.putExtra("result", "这是返回的结果"); // 可以通过putExtra()方法来传递结果数据setResult(Activity.RESULT_OK, resultIntent);finish();

最后,在调用startActivityForResult()方法的Activity中,需要重写onActivityResult()方法来处理返回的结果数据。

@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {super.onActivityResult(requestCode, resultCode, data);if (requestCode == 1 && resultCode == Activity.RESULT_OK) { // 根据请求码和结果码来判断是哪个请求返回的结果String result = data.getStringExtra("result"); // 获取结果数据// 处理结果数据}}

使用startActivityForResult()方法可以方便地启动一个新的Activity,并获取返回的结果数据。记得在调用startActivityForResult()方法的Activity中重写onActivityResult()方法来处理结果数据。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言