首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从OnActivityResult获取内容

是指在Android开发中,通过调用startActivityForResult()方法启动一个Activity,并在该Activity执行完毕后返回结果给调用方的过程。在调用方的代码中,可以通过重写onActivityResult()方法来获取返回的结果。

具体步骤如下:

  1. 在调用方的Activity中,使用startActivityForResult()方法启动目标Activity,并传入一个请求码(requestCode)来标识该请求。
  2. 在目标Activity中,当需要返回结果时,通过调用setResult()方法设置返回的结果数据,并传入一个结果码(resultCode)来标识操作的结果。
  3. 目标Activity执行完毕后,会自动调用调用方的Activity的onActivityResult()方法,并将结果数据传递给该方法。
  4. 在调用方的Activity中,重写onActivityResult()方法,根据请求码和结果码判断返回的结果,并处理相应的逻辑。

以下是一个示例代码:

代码语言:java
复制
// 调用方的Activity
public class MainActivity extends AppCompatActivity {
    private static final int REQUEST_CODE = 1;

    // 启动目标Activity
    private void startTargetActivity() {
        Intent intent = new Intent(this, TargetActivity.class);
        startActivityForResult(intent, REQUEST_CODE);
    }

    // 处理返回的结果
    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == REQUEST_CODE) {
            if (resultCode == RESULT_OK) {
                // 获取返回的内容
                String result = data.getStringExtra("result");
                // 处理返回的内容
                // ...
            } else if (resultCode == RESULT_CANCELED) {
                // 处理取消操作
                // ...
            }
        }
    }
}

// 目标Activity
public class TargetActivity extends AppCompatActivity {
    // 返回结果并关闭Activity
    private void returnResult() {
        Intent intent = new Intent();
        intent.putExtra("result", "Hello, World!");
        setResult(RESULT_OK, intent);
        finish();
    }
}

在上述示例中,调用方的Activity通过startActivityForResult()方法启动目标Activity,并传入请求码REQUEST_CODE。目标Activity在需要返回结果时,通过setResult()方法设置返回的结果数据,并传入结果码RESULT_OK,同时关闭Activity。调用方的Activity重写onActivityResult()方法,在该方法中根据请求码和结果码判断返回的结果,并进行相应的处理。

推荐的腾讯云相关产品和产品介绍链接地址:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券