【发布时间】:2019-02-25 17:29:18
【问题描述】:
将我的项目迁移到androidx 后,我遇到了这个问题。在迁移之前,这一切都像一个魅力(我不得不迁移我的项目)但现在我面对这个 10 分钟前不存在的奇怪问题。
场景:
片段 1 包含项目的列表视图,当用户单击项目时,我调用我的视图模型 setvalue() 方法,然后片段 2 出现以显示用户单击的项目,为此我调用我的视图模型 getvalue()。场景很简单。
片段 1:
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
viewModel.getClickedSong().setValue(viewModel.getSongs().getValue().get(position));
视图模型:
public MutableLiveData<Song> getClickedSong() {
if (clickedSong == null) {
clickedSong = new MutableLiveData<>();
}
return clickedSong;
}
片段 2:
viewModel.getClickedSong().observe(this, new Observer<Song>() {
@Override
public void onChanged(Song song) {
mySong = song;
我也试过:mySong = viewModel.getClickedSong().getValue(),但这也返回 null。
【问题讨论】:
标签: java android mvvm nullpointerexception android-livedata