首页 > 解决方案 > 从 ViewModel 观察者内部访问主要的 Activity 对象

问题描述

定义 EventViewModel。

在定义了 mObject 的 Activity 中可以观察到变化:

Object mObject
EventViewModel eventModel;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    eventModel = ViewModelProviders.of(this).get(EventViewModel.class);
    eventModel.getEvent().observe(this, event -> {

    //can't access the mObject here
    event.val = mObject.val;

};
}

在调用 .observe 子句中的 mObject 时,显示的错误类似于:“'this' is not available here”。

所以我的问题是如何从 ViewModel 观察者内部访问 Activity 对象?

标签: androidviewmodel

解决方案


所以这是误导性的调试器味精……@SaeedMasoumi 是对的,而我的思绪一直停留在调试器味精上,说“这个”是不可访问的……虽然它是!只是调试器显示不是....


推荐阅读