繁体   English   中英

重新创建活动时保留视图背景颜色

[英]Preserving View background colour on recreation of Activity

我已经有了使用Bundle实例状态来存储在销毁并重新创建Activity (例如,在屏幕旋转时)时不会存储的内容的概念。 我还看到您不需要为每个View基本信息(例如TextView文本)执行此操作,因为系统会为您(至少对于已分配ID的视图)执行此操作。 请参阅http://developer.android.com/training/basics/activity-lifecycle/recreating.html

但是,当我使用setBackgroundColor()以编程方式更改View的背景颜色(我将基本View用作链接到颜色选择器的色样setBackgroundColor() ,发现屏幕旋转时颜色会丢失,然后还原为原始设置。 我确实有一个ID分配给View

应该自动保留该颜色信息,还是我只是充满希望,我是否必须单独跟踪该颜色信息并在重新创建活动时恢复颜色?

谢谢。

  • 是,当您直接通过View.setBackgroundColor()设置背景色时,总是在将应用程序更改为横向时将其替换为默认布局。 您应该实现:

    setContentView(R.layout."activitylayoutname");

  • 并且当然要在布局上设置一个背景参数。

编辑1:尝试通过此链接设置背景值:

设置Android布局元素的背景色

而且,如果您想保留“活动”之间的其他价值,则只需重新创建一个活动即可:

http://developer.android.com/training/basics/activity-lifecycle/recreating.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM