我想使用 RxLifeCycle 因?yàn)?compose(bindToLifeCycle),但我已經(jīng)使用 DaggerAppCompatActivity。bindToLifeCycle需要RxAppCompactActivity。但是,Java 不支持多重繼承。我該如何解決?基礎(chǔ)活動(dòng)public class BaseActivity extends DaggerAppCompatActivity{ }主要活動(dòng)public class MainActivity extends BaseActivity { }我想public class BaseActivity extends DaggerAppCompatActivity, RxAppCompactActivity { }但這個(gè)代碼不能使用。
2 回答

翻閱古今
TA貢獻(xiàn)1780條經(jīng)驗(yàn) 獲得超5個(gè)贊
DaggerAppCompatActivity
如果您通過Ctrl+B
在 IDE 中按下來檢查 的實(shí)現(xiàn),您會(huì)發(fā)現(xiàn)唯一的區(qū)別是對AndroidInjection.inject(this)
before 的調(diào)用super.onCreate()
。
所以你可以在之前擴(kuò)展RxLifecycleActivity
和編寫,你會(huì)得到相同的結(jié)果。AndroidInjection.inject(this)
super.onCreate()
您也可以將這些內(nèi)容復(fù)制RxLifecycleActivity
到您的 BaseActivity 中。你可以兩者都做。這真的取決于你。只需將這些基類的實(shí)現(xiàn)復(fù)制到您自己的類中即可工作。

三國紛爭
TA貢獻(xiàn)1804條經(jīng)驗(yàn) 獲得超7個(gè)贊
Java 不支持多重繼承。雖然可以使用 Interface 并在類中實(shí)現(xiàn)多個(gè)接口。
添加回答
舉報(bào)
0/150
提交
取消