gpt4 book ai didi

java - 如何在android Activity中使用多重继承?

转载 作者:行者123 更新时间:2023-12-01 23:03:50 25 4
gpt4 key购买 nike

我想使用 RxLifeCycle 因为 compose(bindToLifeCycle),但我已经使用了 DaggerAppCompatActivity。

bindToLifeCycle需要RxAppCompactActivity。但是,Java 不支持多重继承。怎么解决?

基础 Activity

public class BaseActivity extends DaggerAppCompatActivity{ }

主要 Activity

public class MainActivity extends BaseActivity { }

我要

public class BaseActivity extends DaggerAppCompatActivity, RxAppCompactActivity { }

但是这个代码不能使用。

最佳答案

如果您在 IDE 中按 Ctrl+B 来检查 DaggerAppCompatActivity 的实现,您会发现唯一的区别是对 的调用AndroidInjection.inject(this)super.onCreate() 之前。

因此,您可以扩展 RxLifecycleActivity 并在 super.onCreate() 之前编写 AndroidInjection.inject(this) ,您将获得等效的结果.

您也可以将RxLifecycleActivity中的内容复制到您的BaseActivity中。你可以两者都做。这真的取决于你。只需将这些基类的实现复制到您自己的类中即可。

关于java - 如何在android Activity中使用多重继承?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58411118/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com