public class FlightViewModel extends BaseViewModel { private FlightRepository flightRepository; private MediatorLiveData<Resource<FlightSearchMainOuterModel>> mSearchFlights = new MediatorLiveData<>(); private MediatorLiveData<Resource<…

2020年11月5日 0条评论 37点热度 阅读全文

我在MyViewModel类变量MutableLiveData items中存储了Item类的列表。功能fetchData()通过Retrofit库从webService获取数据,而checkStatus()函数则在用户单击按钮时对列表中的每个项目都应执行检查。 我的问题是:什么是更新MutableLiveData对象中存储的列表上项目的正确方法?我的解决方案可以接受吗?或者您知道更好的解决方案吗? Item.java public class Item { int id; String status; } MyV…

2020年9月1日 0条评论 33点热度 阅读全文

在OnCreate中执行 public void Start() { ModelSingleHotTrendingNews modelSingleHotTrendingNewsX = ViewModelProviders.of(getActivity()).get(ModelSingleHotTrendingNews.class); modelSingleHotTrendingNewsX.gametitle.setValue("Start"); modelSingleHotTrendingNewsX.likecou…

2020年8月6日 0条评论 33点热度 阅读全文

情境我有Spinner和RecyclerView。微调器具有三个不同的选项VIP用户,新用户,高分用户。在myViewModel中, private liveData<ArrayList<User>> userList; public void init(int position){ switch (position){ case 0: userList = myRepo.getInstance().getVipUser(); break; case 1: userList = myRepo…

2020年6月17日 0条评论 57点热度 阅读全文

LiveData setValue应该已经在Activity中触发了onChanged方法,但是它仅在第一次调用时,当我尝试进行分页后,它会中断并且不再调用onChanged,尽管我的响应确实成功并且看到了日志。 setValue / postValue有什么问题?是虫子吗?我应该自己实现观察者模式吗?那么使用LiveData有什么意义呢?我的分页不仅仅在这2-3天就起作用了..... MainActivity类 public class MainActivity extends AppCompatActivity…

2020年6月14日 0条评论 21点热度 阅读全文

我目前正在开发一个遵循MVVM架构的笔记应用程序。有2个活动。主要带有注释列表和查看模式,允许用户查看注释。如果他们单击描述或标题,则允许编辑模式,您可以在其中保存更改,而不能保存更改。创建新便笺时,会将用户带到相同的活动来查看/编辑便笺,并启用带有空标题和描述的编辑模式。目前的问题是,如果用户创建了一个便笺并决定在创建后立即对其进行编辑,则当用户返回到便笺列表时,便会有一堆便笺,每个便笺都包含他所做的每个更新,因此便笺将被保存到新便笺中,而不是更新现有便笺。 保存注释的代码: private void saveN…

2020年6月2日 0条评论 36点热度 阅读全文

我正在尝试创建一个仅在特定时间间隔内没有条目的情况下才将条目添加到数据库的应用程序,并且如果数据库中已有一项则修改现有条目。我正在使用Room。 它可以工作,但仅适用于workaroud,因为我必须在添加值之前调用add函数两次(在使它起作用之前,请两次输入)。而且我也不喜欢添加观察者并随后立即将其删除。在初始化数据库时,我还必须实现变通方法,并在首次创建数据库时使用一个值。 如何从Repository类内的LiveData列表中获取数据并进行更改,而不会导致无限循环,或者如何重新设计代码以避免这种情况? 完整的代…

2020年5月23日 0条评论 44点热度 阅读全文

在Kotlin中,有一个扩展方法observeOnce(https://code.luasoftware.com/tutorials/android/android-livedata-observe-once-only-kotlin/),这是我要在Java中复制的行为。从谷歌搜索的了解来看,您不能在Java中使用Kotlin扩展方法(可能是错误的),因此我有两种选择:使用已实现但不热衷的SingleEventLiveData,以及删除曾经使用过的观察者; final LiveData<List<Stri…

2020年5月22日 0条评论 41点热度 阅读全文

我有一个UI组件,可以接受LiveData<PagedList<T>>,但在一种情况下,我需要将其用于直接从RecycleViewer传递的数据(RecycleViewer会生成结构为List<Object>的输出)。我可以轻松将其映射到Map<Int, Object>,但是Map无法转换为DataSource,因此我需要以某种方式将其转换为DataSource<Int, Object>或直接转换为<PagedList<Object>&g…

2020年5月3日 0条评论 19点热度 阅读全文

因此我使用RecyclerView制作社交媒体应用程序,它具有类似按钮和类似计数器的功能。当MainActivity加载OnCreate时,它将在我的RecyclerView中单击“ http // test / getLikeCounter”以显示类似计数器,但是当我单击类似按钮时,它将按我自己的API“ http // test / setLikeCounter”并在我的数据库中添加计数器,但是由于它不会再次加载OnCreate方法,因此不会在RecyclerView中添加我的Like计数器,当出现以下情况时,…

2020年4月22日 0条评论 25点热度 阅读全文