![](/img/trans.png)
[英]How to pass context in Repository in MVVM without DI and following the clean architecture?
[英]How to Providing Drawable for Repository in MVVM, Clean Architecture
我正在尝试使用 SOLID 和 MVVM 架构进行编码。 但我很困惑如何在 MVVM 中向 Repository 提供 drawable
interface IStringProvider {
val mengenaliPotensiDiri: String
val eventSpesial: String
val pentingMengenaliDiri: String
val mengenaliAspekDiri: String
val mulaiRencanaKarier: String
}
class AssessmentListRepository(private val stringProvider: IStringProvider) {
fun getAssessmentTopicMengenaliDiri(): List<AssessmentProgressItem> {
return listOf(
AssessmentProgressItem(
stringProvider.kerangkaPerencanaanKuliahDanKarier,
R.drawable.ic_home_video_open, //How should i provide it?
R.drawable.ic_home_video_lock,
R.drawable.ic_home_video_open,
{ AssessmentProgressItem.PROGRESS_STATUS_OPEN },
true,
0,
{}
),
AssessmentProgressItem(
stringProvider.caraMengenaliDiri,
R.drawable.ic_home_video_open,
R.drawable.ic_home_video_lock,
R.drawable.ic_home_video_open,
{ AssessmentProgressItem.PROGRESS_STATUS_OPEN },
true,
0,
{}
)
)
}
}
那么,我应该如何向我的 AssessmentListRepository 提供 drawable 呢? 我应该提供 Drawable class,还是只提供 integer ID?
Drawable 是 Android 组件吗?
有趣的问题。 希望我理解正确,因为我不明白为什么您的存储库需要可绘制对象? 这些drawables要做什么? 将它们返回给 VM?
实际上,我不确定存储库是否必须提供 Drawable。 And R.java is definitely Android specific class, so we can say that your Repository class depends on Android specific class. 我认为更好的方法是这样做:
干杯
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.