所以我想构建多模块化android项目,但在注入接口和实现方面遇到问题。
我有两个用于片段之间导航的界面
第一个界面
interface Fragment1Navigation {
fun navigateToFragment1()
fun navigateToFragment2()
}
Run Code Online (Sandbox Code Playgroud)
第二个接口
interface Fragment2Navigation {
fun navigateToFragment3()
fun navigateToFragment4()
}
Run Code Online (Sandbox Code Playgroud)
然后我有实现这两个接口的类
class Navigator: BaseNavigator(), Fragment1Navigation, Fragment2Navigation {
override fun navigateToFragment1() {
// some implementation
}
override fun navigateToFragment2() {
// some implementation
}
override fun navigateToFragment3() {
// some implementation
}
override fun navigateToFragment4() {
// some implementation
}
}
Run Code Online (Sandbox Code Playgroud)
我想在我的 mainActivity 中注入这个 Navigator 类以首先绑定我的导航控制器,我也想在其他片段中注入接口,我制作了这样的模块类
@Module()
class NavigationModule {
@Provides
@Singleton
fun provideNavigator(): Navigator = Navigator()
@Provides
fun provideFragment1Navigation(): Fragment1Navigation …Run Code Online (Sandbox Code Playgroud)