|
|
1
6
使用“辅助注射”方法可以解决您遇到的问题。 这意味着您需要使用现有作用域提供的依赖项和实例创建者提供的某些依赖项来构建类,在本例中是您的主要活动。谷歌的Guice有一个很好的 description of what it is and why it is needed 不幸的是,匕首2没有这个功能。然而,杰克·沃顿正在研究 separate library 可以附在匕首上。此外,你可以在他关于2018年伦敦德立顿的演讲中找到更多细节,他为这个问题专门做了一个完整的演讲部分: https://jakewharton.com/helping-dagger-help-you/ |
|
|
2
3
与已经给出的答案相比,另一种方法是通过一个叫做geomodelFactory的匕首依赖注入获得一个“工厂”,它可以为您创建geomodel的新实例。 您可以将地址和类型传递给创建实例的工厂。为了进行优化,您可以存储已请求的所有不同地址/类型的引用(如果不删除旧的地址/类型,则会导致内存泄漏,如果存在大量不同的地址/类型),或者仅存储最新的实例和代码的其他部分,只需请求工厂为您提供h最后创建的几何模型。 |
|
|
3
1
这个
所以在我看来,你应该创造一个
|
|
|
4
1
如果愿意,可以在运行时重新创建整个组件,然后将参数作为构造函数参数传递给模块。类似:
您的模块如下所示:
但是,如果您在组件中创建许多不同的对象,那么这个方法可能是浪费的。 |
|
Murilo · Jetpack编写导航栏项目图标 1 年前 |
|
|
KolaYAndr · 活动RESULT_OK似乎从未发生过 1 年前 |
|
psycho_pat · Android应用程序中的权限 1 年前 |
|
|
FarazFiroz · 如何将argb转换为描述性文本颜色 1 年前 |
|
Daniel · Unity Android游戏支持的设备数量太少 1 年前 |