【问题标题】:How to pass parameters values to the ViewModel in MVVM pattern?如何以 MVVM 模式将参数值传递给 ViewModel?
【发布时间】:2020-01-27 04:50:28
【问题描述】:

我正在用 kotlin 语言开发一个带有 MVVM 模式的 android 应用程序, 我的问题是如何将 EditText 值传递给位于 ViewModel 中的函数?以及如何从图库中选择图像并将其发送到此 ViewModel? 如果你有任何代码帮助吗? 实际上,我不喜欢 MVVM 模式,但客户希望它采用这种模式......谢谢。

【问题讨论】:

  • 分享一些代码
  • 代码是什么?我要一些代码:-)

标签: android kotlin mvvm imageview viewmodel


【解决方案1】:

如果你分享了一些代码会很方便。

下面是我要做的。

ViewModel 内部创建一个MutableLiveData 对象并在layout 文件中声明它,如下所示。

ViewModel

val yourVariable : MutableLiveData<String> = MutableLiveData()

layout 文件中,

首先添加ViewModel,如下所示。

<data>
    <variable
        name="viewmodel"
        type="com.example.app.YourViewModel" />
</data>

然后到EditText

<EditText
    android:id="@+id/yourID"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="@={viewmodel.yourVariable}"
/>

然后你可以在你的ViewModel 中使用yourVariable

【讨论】:

  • 你的意思是dataBinding,我知道但我的意思是图像,我需要一些如何从图库中提取图像并将其与改造库一起发送,主要问题是我不知道如何选择一个图像并将其放在 viewModel 中......如果你是我的意思。
  • 你的意思是dataBinding,我知道但我的意思是图像,我需要一些如何从图库中提取图像并将其与改造库一起发送,主要问题是我不知道如何选择一个图像并将其放在 viewModel 中......如果你是我的意思。
  • @AliAhmed 您的第一个问题是如何将 EditText 值传递给位于视图模型中的函数?”答案在上面。第二个问题是“如何从图库中选择图像并将其发送到此视图模型“您可以通过视图模型中的函数从 Activity 传递图像数据。
  • 更多解释好吗?任何代码?还是资源?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-09-23
  • 2011-05-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-20
相关资源
最近更新 更多