之间我就按一下按钮充气视图,用户可以为自己喜欢添加尽可能多的观点,所有的罚款我做了工作,但现在的问题是当我返回一个活动并再次返回到我的动态生成活动时,生成的每个视图都消失了。类似的情况下,如果我去下一个活动,并回到膨胀的活动。我知道onSaveInstance
和onRestoreSaveInstance
。但是,如何将视图信息放在onSaveInstanceState
的捆绑包中?请注意,我的视图是动态生成的,即按钮单击,我想知道如何保留我的活动状态。 你如何去做呢?保存例如当我们来回切换活动
回答
我在想,你应该实现某种逻辑,可以帮助您恢复您的Views
的状态。所以,你应该设计一个类,让说ViewDetail
,不知怎的,保存有关要添加....类型,尺寸等,此类应该实现Parcelable
,所以你可以把它添加到bundle
的Views
细节。
所以,你会保持一个ArrayList<ViewDetail>
,myViews
其中每次用户添加新View
您创建一个新的ViewDetail
对象添加到您myViews
阵列。
,然后保存Views
,并使用这些对象的还原它们:
@Override
protected void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
//save your view states
outState.putParcelableArrayList("MY_VIEWS",myViews);
}
@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
//get the views back...
myViews=savedInstanceState.getParcelableArrayList("MY_VIEWS");
//TODO: add the views back to your Activity
}
如何的意见被写入到一个包裹对象? – 2012-01-05 13:48:14
非常感谢您的回答,现在让我试试。 – 2012-01-05 13:48:53
随着应用程序可完全在任何时刻,而不用您noticem提供长期储存堆外存储
你杀了如果您的活动已终止(并且可能在任何时间),则只需恢复所有视图。当它被终止后再次激活,它通过onCreate()方法 - 这将是恢复活动状态适当的位置。
只有这guaranted您的应用程序/ activity被销毁之前调用回调函数的onPause() - 这是一个合适的地方来保存视图状态到长期堆外存储。
我相信当我回击时,动态活动已完成..有没有办法在用户回击时完成活动? – 2012-01-06 10:40:48
这取决于内存状态 - 如果有足够的内存,它只是暂停,以防您的用户很快再次激活它。 (onResume()将被调用)另一种情况是接通电话 - 这有优先权,也暂停你的活动而不杀死它。另一个原因是电话方向改变 - 活动将被终止并重启,除非你明确地处理。当启动器将要锁定时,它会强制你的活动进入portait布局 – 2012-01-06 11:11:35
- 1. 在Android中来回切换活动
- 2. 如何保存活动的实例?
- 3. 当切换到其他活动时保持活动在后台进行?
- 4. 如何在切换到其他活动并返回时保存活动表单域
- 5. Android:切换活动!
- 6. Android保存在不同活动之间切换的值
- 7. 在活动切换期间无法保存日期
- 8. 如何保存我的活动的实例状态
- 9. 保存状态,同时来回切换视图
- 10. 来回切换NSTextViews的文本存储
- 11. android动画活动切换
- 12. 操作栏消失,当我切换新的活动(Android Studio中)
- 13. 当我切换到另一个缓冲区然后切换回来时,Eclipse不会保留我未保存的编辑
- 14. 如何保存我的活动状态?
- 15. 当在活动之间切换时,保持listview的数据保留
- 16. 保存一个活动的实例来重用
- 17. Visual Studio的冻结当我保存然后切换文件
- 18. 在切换活动时保持视图活跃
- 19. 当我切换JPanels
- 20. 从活动切换到MapActivity
- 21. 无法切换活动
- 22. 切换服务活动
- 23. 在活动之间切换
- 24. 使用textview切换活动
- 25. 我可以在Android中保存活动的不同实例吗?
- 26. Android - 多项活动,让他们活着,并保存状态?
- 27. Android:如何使用屏幕方向更改来切换活动
- 28. Javascript样式,来回切换
- 29. 来回切换上点击
- 30. jQuery appendTo(来回切换)
我仍然在寻找解决方案... – 2012-01-06 15:57:04