我有一个活动(Activity)并为其创建了一个View-Model(视图模型)。我创建了不同的类,如:UiUtil(显示、隐藏视图、隐藏键盘),网络层(Network Layer),数据库层(Data Base Layer),AppUtil(用于通用功能比如集合检查、字符串验证、日期转换等)。
我的问题是,在MVVM(Model View ViewModel)设计模式中,Activity能否直接使用这些实用程序类或者需要通过View-Model来使用这些类?如果是通过 View-Model,则在View-Model中我需要编写一个方法,仅调用实用程序类的某个方法。例如以下TimeDateManager是View-Model中使用的实用程序类:
class HomeViewModel: BaseViewModel()
{
fun prepareTimeAmPmToDisplay(context: Context, alarm: Alarm): String
{
return TimeDateManager.prepareTimeAmPmToDisplay(context, alarm)
}
}