ViewPager - 确定页面何时不在视图范围内

时间:2015-11-24 22:42:32

标签: android android-fragments android-viewpager fragmentstatepageradapter

我在我的应用中使用ViewPager来显示一系列日期的信息 - 每个页面都包含相应日期的信息。有相当多的这些信息,以及用户交互来更改此信息。当信息发生变化时,我需要将其保存到sqlite数据库。

虽然每次用户交互改变时我都可以自动将信息保存到数据库,但效率极低 - 我想保存一次。当页面离开视图时,它可以被回收,从而丢失信息。理想情况下,我希望在页面不在视图时将日期信息保存到数据库中 - 但我找不到挂钩该事件的方法。

在使用ViewPager.OnPageChangeListener呈现新页面时很容易看到,但是我无法看到一种方法可以将页面移出视野 - 方法要么是适应的抓住新页面进入视图或通用滚动,这可能会或可能不会指示页面出去。

我已经从FragmentStatePageAdapter扩展到我的适配器,所以可能会在那里挂钩。不幸的是,对于除了常见场景之外的任何事情,Android文档都非常稀疏 - 阅读FragmentStatePageAdapter API documentation提供的信息非常少,除了让我知道这可能是正确的前进方向 - 可能是saveState和{{1方法 - 但这些似乎是处理适配器的状态,而不是每个页面的片段。

有人可以提出解决方法吗?

0 个答案:

没有答案