android中的startactivityforresult怎么使用

655Z技术栈 Android 2025年06月28日 7

在Android中,startActivityForResult()方法用于启动一个新的Activity,并且希望在新的Activity关闭后获取返回的结果数据。

使用startActivityForResult()方法的步骤如下:

  1. 在当前Activity中调用startActivityForResult()方法来启动新的Activity。例如:
Intent intent = new Intent(this, SecondActivity.class); startActivityForResult(intent, REQUEST_CODE);

其中,REQUEST_CODE是一个自定义的整数,用于标识启动的Activity。

  1. 在新的Activity中,当需要返回结果时,可以通过以下代码设置返回的结果数据:
Intent intent = new Intent(); intent.putExtra("result", resultData); // 将结果数据放入Intent中 setResult(Activity.RESULT_OK, intent); // 设置返回结果 finish(); // 关闭当前Activity

其中,resultData是你希望返回的结果数据。

  1. 在当前Activity中,通过重写onActivityResult()方法来处理返回的结果数据。例如:
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_CODE && resultCode == Activity.RESULT_OK) { // 处理返回的结果数据 String result = data.getStringExtra("result"); // ... } }

在onActivityResult()方法中,可以根据requestCoderesultCode来判断返回的结果是否是我们所期望的。然后可以通过data参数获取返回的结果数据。

这就是使用startActivityForResult()方法的基本步骤,通过这种方式,可以在不同的Activity之间传递数据并获取返回的结果数据。

提供PHP及ThinkPHP框架的定制开发、代码优化,PHP修改、ThinkPHP修改。

邮箱:yvsm@163.com 微信:yvsm316 QQ:316430983
关闭

用微信“扫一扫”