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

获取非活动类的onActivityResult (Android)

获取非活动类的onActivityResult (Android)

在Android开发中,onActivityResult()方法用于接收其他活动返回的结果。通常情况下,我们在活动类中重写该方法来处理返回的结果。然而,有时候我们需要在非活动类中获取onActivityResult()的结果,这时可以通过以下步骤实现:

  1. 创建一个接口(Callback):在非活动类中创建一个接口,用于回调返回的结果。接口中定义一个方法,用于接收返回的结果。
代码语言:java
复制
public interface Callback {
    void onResult(int resultCode, Intent data);
}
  1. 在活动类中实现接口:在活动类中实现上述接口,并在onActivityResult()方法中调用接口的方法,将结果传递给非活动类。
代码语言:java
复制
public class MainActivity extends AppCompatActivity {
    private Callback callback;

    // ...

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (callback != null) {
            callback.onResult(resultCode, data);
        }
    }

    public void setCallback(Callback callback) {
        this.callback = callback;
    }
}
  1. 在非活动类中获取结果:在非活动类中实现Callback接口,并将其传递给活动类的实例。然后,在需要获取结果的地方调用接口的方法,即可获取到onActivityResult()的结果。
代码语言:java
复制
public class NonActivityClass implements Callback {
    private MainActivity activity;

    public NonActivityClass(MainActivity activity) {
        this.activity = activity;
        this.activity.setCallback(this);
    }

    @Override
    public void onResult(int resultCode, Intent data) {
        // 处理返回的结果
    }

    // 在需要获取结果的地方调用接口的方法
    public void getResult() {
        // 调用活动类的方法,触发onActivityResult()回调
        // 结果将通过onResult()方法返回
        activity.startActivityForResult(intent, requestCode);
    }
}

这样,通过回调接口的方式,非活动类就可以获取到onActivityResult()的结果了。

这种方法适用于需要在非活动类中处理返回结果的情况,例如在工具类、网络请求类等中获取onActivityResult()的结果。

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

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

相关·内容

12分7秒

19.尚硅谷_MyBatis_映射文件_insert_获取非自增主键的值_selectKey.avi

13分47秒

day28_反射/24-尚硅谷-Java语言高级-获取运行时类的父类及父类的泛型

13分47秒

day28_反射/24-尚硅谷-Java语言高级-获取运行时类的父类及父类的泛型

13分47秒

day28_反射/24-尚硅谷-Java语言高级-获取运行时类的父类及父类的泛型

4分54秒

day20_常用类/23-尚硅谷-Java语言高级-System类中获取时间戳的方法

4分54秒

day20_常用类/23-尚硅谷-Java语言高级-System类中获取时间戳的方法

4分54秒

day20_常用类/23-尚硅谷-Java语言高级-System类中获取时间戳的方法

18分15秒

Java零基础-341-获取类路径下文件的绝对路径

5分29秒

第2章:类加载子系统/34-ClassLoader的常用方法及获取方法

7分23秒

第二十章:类的加载过程详解/64-加载完成的操作及二进制的获取方式

5分6秒

day28_反射/21-尚硅谷-Java语言高级-获取运行时类的方法结构

5分6秒

day28_反射/21-尚硅谷-Java语言高级-获取运行时类的方法结构

领券