如何在启动新的Activity时启动ViewModel方法?

时间:2018-11-19 16:26:26

标签: android android-databinding

启动ViewModel方法几乎没有问题。我有带有项目的RecyclerView,单击一行后,我想将项目数据传递到新的明细活动,并在开始新视图后在Edittexts中显示此内容。我在ViewModel的方法中拥有所有数据,但是如何将参数传递给Activity中的onCreate或Databinding中的不同解决方案呢?

ViewModel中的方法:

 @Override
public void onItemClick(View view, Task item) {
    Log.d(TAG, "MVM " + view + " / " + item.getDescription() + " / " + item.getDate() + " / " + item.getTime());
    description.set(item.getDescription());
    date.set(item.getDate());
    time.set(item.getTime());
}

我尝试在onCreate详细活动中设置此方法,但是我不怎么传递视图和项目。数据绑定提供了任何解决方案吗?

1 个答案:

答案 0 :(得分:1)

开始新活动时,可以使用Intent.putExtra()传递数据。如果您想通过绑定来做到这一点:创建一些(例如存储库类)带有可观察字段(您可以在其中保存最后单击的RecycleView项目数据)和

-使用绑定在您的新详细信息活动中进行观察。

-单击您的RecycleView项目后,更新此可观察字段。