3

我有一个ViewPager我想在离开后保存当前状态的Activity. 我的选择之一是将当前变量值保存在我已经拥有的数据库中,并在重新创建活动时将它们读回。但是,此解决方案似乎工作过度。还有另一种更好的方法来恢复 的最后状态ViewPagwer吗?我可以使用ViewPager适配器的这两种方法吗?

@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {}

@Override
public Parcelable saveState() {
    return null;
}

如果是这样,请提供使用它的简单示例。谢谢。

4

1 回答 1

0

这实际上取决于您要保存什么样的数据。如果是一些私有字段,你可以使用这两种方法,如果数据更复杂,可以使用 Parcelable。通常不需要为此目的使用数据库,如果您从互联网或其他地方捕获数据并希望保存/恢复它而不是在破坏活动后再次重新加载,则使用数据库作为缓存,但这是不同的问题。因此,要缓存数据,您需要在从 Internet 下载所有需要的数据后立即使用应用程序的 DB 和文件夹,然后使用 AsyncTaskLoader 从 DB 加载它,然后使用 PagerAdapter 在 ViewPager 上表示它。

于 2012-09-07T00:20:26.613 回答