Android在方向更改时保存状态

Android在方向更改时保存状态,第1张

概述我有一个Android应用程序,它维护有关行进距离,时间流逝等的状态.当用户更改屏幕时Android调用onDestroy()时,我可以方便地存储在对象中并在Bundle中存储对该对象的引用方向,然后恢复onCreate(BundlesavedBundle)中的状态.但是,我在屏幕上的Buttons和EditText对象中也有一些状态,我

我有一个Android应用程序,它维护有关行进距离,时间流逝等的状态.当用户更改屏幕时AndroID调用onDestroy()时,我可以方便地存储在对象中并在Bundle中存储对该对象的引用方向,然后恢复onCreate(Bundle savedBundle)中的状态.但是,我在屏幕上的buttons和EditText对象中也有一些状态,我希望通过屏幕方向保持这种状态.例如,在onStart(Bundle savedBundle)中我调用:

_timerbutton.setBackgroundcolor(color.GREEN);_pausebutton.setBackgroundcolor(color.YELLOW);_pausebutton.setEnabled(false);

然后在我的应用程序的整个 *** 作过程中,这些按钮的颜色/启用状态将被更改.是否有更方便的方法来持久保存用户界面项(EditText,button对象等)的状态,而无需手动保存/恢复每个按钮的每个属性?在屏幕方向之间手动管理这种类型的状态感觉非常笨拙.

谢谢你的帮助.

解决方法:

你尝试过使用过吗?

<activity name= ".YourActivity" androID:configChanges="orIEntation|screenSize"/>

在清单文件?

默认情况下它不起作用,因为当您更改方向时,将再次调用onCreate并重新绘制视图.

如果你写这个参数不需要在Activity中处理,那么框架将处理其余的事情.
如果方向改变,它将保持屏幕或布局的状态.

注意如果为横向模式使用不同的布局,则通过添加这些参数,将不会调用横向模式的布局.

Other way 和Another way

总结

以上是内存溢出为你收集整理的Android在方向更改时保存状态全部内容,希望文章能够帮你解决Android在方向更改时保存状态所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1100686.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存