1.创建ViewModel
public class SingletonViewModel extends ViewModel {
private SingletonLiveData content;
public SingletonLiveData getContent() {
if (content == null) {
content = SingletonLiveData.getInstance();
}
return content;
}
public void setContent(SingletonLiveData content) {
this.content = content;
}
/**
* 改变
*/
public void changeContent(String text) {
content.setValue(text);
}
}
2.这里监听的是SingletonLiveData,这是一个单例对象,也是实现多页面监听同一个状态的关键所在。
public class SingletonLiveData extends LiveData<String> {
private SingletonLiveData() {
}
@Override
public void postValue(String value) {
super.postValue(value);
}
@Override
public void setValue(String value) {
super.setValue(value);
}
private static SingletonLiveData sInstance;
public static SingletonL