我阅读文档并发现,我可以使用注入Activity对象 “HasActivityInjector”和Fragment对象带有“HasFragmentInjector”,但如何注入View对象?就像我有自定义视图而不是片段一样,如何注入呢?
答案 0 :(得分:1)
您可以在组件内部声明inject
方法,如
fun inject(view: YourCustomView)
然后,当您在某些活动或片段上使用视图时,请致电
override fun onViewCreated(view: View?, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
yourCustomView.inject(component)
}
component
可以从注射中的片段\活动onCreate
内获得。
在您的观点中,您需要实施inject
方法,如下所示:
fun inject(component: Component) {
component.inject(this)
}
就是这样,现在您可以从自定义视图中的组件中注入所有内容。