在Android Java中首次调用后,LiveData没有更新

时间:2019-05-03 00:26:16

标签: android aws-lambda android-livedata android-viewmodel mutablelivedata

我正在尝试构建一个应用程序以从服务器获取提要列表并在Recyclerview中显示。我正在尝试像这样的LiveData的基本实现。

我在Fragment中设置了一个观察者,如下所示:

jest

我的SellViewModel这样:

viewModel = ViewModelProviders.of(getActivity()).get(SellViewModel.class);

    viewModel.getSellItemList(19).observe(this, new Observer<List<LambdaSellRequestClass>>() {
            @Override
            public void onChanged(@Nullable List<LambdaSellRequestClass> sellItems) {


                adapter.setSellEntities(sellItems);

            }
        });

}

我的SellRepository是这样的:

public class SellViewModel extends AndroidViewModel {

private SellRepository repository;

private MutableLiveData<List<LambdaSellRequestClass>> sellItems;

public SellViewModel(@NonNull Application application) {
    super(application);
    repository = new SellRepository(application);

    try {
        if (sellItems == null) {
            sellItems = new MutableLiveData<>();
            sellItems.postValue(repository.getSellItemList(user_id));
        }
    }catch (Exception e) {
        Log.d("SELLFRAGMENT", "Error: " + e.getLocalizedMessage());
    }
}

public MutableLiveData<List<LambdaSellRequestClass>> getSellItemList(int userId) throws ExecutionException, InterruptedException {

    return sellItems;
}

我的问题是,当我向数据库中添加新的销售商品时,它没有更新移动应用程序。

0 个答案:

没有答案