为什么notifyDataSetChanged无法在某些设备上运行?

时间:2017-07-28 10:32:54

标签: java android android-fragments android-viewpager fragment

直升机,

我有一个包含5个片段的viewpager。

我的问题是,打电话

 viewpager.getAdapter().notifyDataSetChanged();

在某些设备上无法正常工作。

例如,在我的BQ Aquaris手机上它运行正常。它会刷新所有五个片段。

但是在我的华为Honor手机上,它只是刷新了第一个片段,其他片段就像它们一样。

我该如何避免这个问题?

BQ Aquaris的android版本是:7.1.1

华为Honor android版本是:7.0

1 个答案:

答案 0 :(得分:0)

您可以尝试将<Redirect to={"/search/" + this.state.name} /> 设置为5(有关详情,请参阅https://developer.android.com/reference/android/support/v4/view/ViewPager.html#setOffscreenPageLimit(int))。

但不建议在内存中保留大量页面。另一种方法是使用viewPager.setOffscreenPageLimit并更新相应的片段。