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

setResult调用了相同的活动,而不是调用父活动

是指在Android开发中,当一个活动(Activity)需要返回结果给调用它的活动时,可以使用setResult()方法来设置结果,并通过finish()方法来关闭当前活动。通常情况下,setResult()方法会将结果返回给调用它的父活动。

然而,有时候我们可能需要将结果返回给同一个活动,而不是调用它的父活动。这种情况下,可以通过在setResult()方法中传递一个特定的参数来指定要返回结果的活动。这样,当调用finish()方法关闭当前活动时,结果将返回给指定的活动。

这种情况下,可以通过在setResult()方法中传递一个特定的参数来指定要返回结果的活动。例如,可以使用以下代码来设置结果并返回给相同的活动:

代码语言:java
复制
Intent intent = new Intent();
intent.putExtra("result", "这是返回的结果");
setResult(RESULT_OK, intent);
finish();

在上述代码中,我们创建了一个Intent对象,并使用putExtra()方法将结果数据添加到Intent中。然后,我们调用setResult()方法,将结果设置为RESULT_OK,同时将Intent作为参数传递进去。最后,我们调用finish()方法关闭当前活动。

在接收结果的活动中,可以通过onActivityResult()方法来获取返回的结果数据。例如:

代码语言:java
复制
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    
    if (requestCode == REQUEST_CODE && resultCode == RESULT_OK) {
        String result = data.getStringExtra("result");
        // 处理返回的结果数据
    }
}

在上述代码中,我们通过判断requestCode和resultCode来确定返回的结果是否有效。如果有效,我们可以使用getStringExtra()方法从Intent中获取返回的结果数据,并进行相应的处理。

总结:setResult调用了相同的活动,而不是调用父活动是指在Android开发中,通过设置setResult()方法的参数,可以将结果返回给同一个活动,而不是调用它的父活动。这在某些特定的场景下非常有用。

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

相关·内容

领券