刷新视图页面选项卡的内容

时间:2018-09-02 12:12:58

标签: android android-recyclerview hashmap android-viewpager android-tablayout

我在android的分页器中使用了选项卡布局,其中我根据传入的网络调用结果动态加载和显示选项卡。

要将内容显示为选项卡栏标题并收集到特定选项卡,我将传入的响应结果合并为

LinkedHashMap<String, List<Object>> map = new LinkedHashMap<>();

其中,字符串是标签的标题,对象列表是与该标签相关的集合。

集合的每一行都有一个删除按钮,删除后,我再次调用相同的方法从服务器获取更新的内容,因此,我的寻呼机再次从第一个选项卡开始(刷新整个地图并创建一个新地图)

如果我只想刷新特定的选项卡,而不刷新整个地图并说出adapter.notifyDataSetChange()方法该怎么办。

我正在使用FragmentStatePagerAdapter为分页器中的标签和片段充气。

1 个答案:

答案 0 :(得分:0)

我认为视图分页器无法为您提供开箱即用所需的灵活性。

它通常是为固定的一组页面设计的,如果需要更改,则假定所有页面都将更改。您可以更改整个页面集合,而不是单个页面。

如果您想继续使用视图寻呼机,那么您可能会记得您正在使用的记录页面索引,并且在适配器上重置数据后,导航至记录的索引,但是如果您仍然使用慢速设备,这可能会给用户带来糟糕的用户体验滚动动画。

如果您愿意接受替代方案,请考虑将视图分页器和选项卡交换为回收者视图。

Recycler视图适配器支持特定索引或范围的通知更改,并支持添加/删除和更新。

您可以在回收者视图单元格中显示收集名称和删除按钮。轻按该单元格后,将启动一个屏幕或一个片段,其中包含当用户在设计中单击一个选项卡时视图分页器片段所显示的内容。