通过单击按钮

时间:2017-07-17 09:01:16

标签: android android-layout listview android-fragments

我有一个Activity,其中包含viewpager,每个viewpager选项卡包含一个片段。这些片段中只有一个有一个recyclerview(内部有cardView),当然还有一个适用于recyclerview的适配器。通过单击Main Activtiy布局中的浮动操作按钮,另一个Activity打开,其中包含两个编辑文本,一个用于设备ID,一个用于设备名称,一个按钮称为Add。通过单击添加按钮,它应该将设备添加到数据库并更新使用notifyItemInserted(position)的适配器....这里的问题是它立即将设备添加到数据库但是适配器不立即更新视图。我使用viewpager选项卡滚动浏览应用程序后,或者当我从头开始主活动时更新....代码中没有错误,我搜索了答案,但我找不到任何解决此问题的方法。

任何人面对这样的问题请指教 感谢

2 个答案:

答案 0 :(得分:1)

尝试使用swapadapter()方法。

 void swapAdapter (Adapter adapter, 
            boolean removeAndRecycleExistingViews)

将当前适配器与提供的适配器交换。它类似于setAdapter(Adapter),但假定现有的适配器和新的适配器使用相同的RecyclerView.ViewHolder并且不清除RecycledViewPool。

答案 1 :(得分:0)

您是否尝试在onActivityResult()中调用SetUpRecyclerView,我认为您正在使用它。这是我在向My RecyclerViews添加元素时使用的。 使用FragmentPagerAdapter时,您的寻呼机会在内存中保留两个选项卡,这就是您必须滚动才能使更改生效的原因。但是对我来说调用我的SetupRecyclerView工作得很好。