【问题标题】:how to show a dialog in mvvm android如何在 mvvm android 中显示对话框
【发布时间】:2017-07-05 08:59:13
【问题描述】:

显示对话框,在 MVVM 中启动活动是视图责任。
在视图中,您有一个 VM 实例,但在 VM 中您没有视图实例。 所以解决方案是使用实时数据并在视图中观察,对吗?
但是我不想使用实时数据呢?当我无权查看时如何显示对话框?

【问题讨论】:

  • 我不知道您想在何时何地显示对话框,但您可以将视图从您的 xml 发送到虚拟机,如下所示:android:onClick="@{(v) -> viewModel .onClick(v)}" 希望对您有所帮助。
  • 是的,但我的问题是在 VM 的定义中,您无法显示对话框或启动活动这是查看任务我的问题是当我在 VM 中时如何在视图中显示对话框决定显示对话框并且无权查看
  • 也许可以尝试使用虚拟机中的接口。
  • 喜欢 MVP?那么 MVP 和 MVVM 有什么不同呢?
  • 所以我们不得不引用自定义对话框以便在活动中执行 .show()?

标签: android mvvm android-livedata


【解决方案1】:

使用某些版本的观察者模式是唯一的方法!即使定义一个接口并让视图实现该接口,基本上也是使用观察者模式。 java Observable、Rx Observable 和 LiveData 所做的是,它们使这个过程变得超级简单。

【讨论】:

    猜你喜欢
    • 2017-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多