这是对的吗?
但是,保留了复选框IS的已检查状态,这让我感到困惑,保存了哪些信息,哪些信息没有?
在配置更改后确保视图保持可见的最佳方法是什么?
谢谢, 扎克
答案 0 :(得分:1)
除非另行指定,否则配置更改将导致您的当前活动被销毁。尝试检查该复选框的可见性是否可见。
在另一种情况下,旋转设备将导致布局更改,使用横向和纵向检查布局文件,检查是否可以看到正确放置的复选框。
答案 1 :(得分:1)
配置更改会强制活动经历整个生命周期。这意味着它将与您的View一起销毁并重新创建。
默认情况下,视图不保留可见性状态。 onSaveInstanceState()的定义是here。
"此状态应仅包含非持久性信息或以后无法重建的信息。"
您可以使用保存其可见性状态的自定义CheckBox实现,也可以将此状态保存为活动/片段中的布尔值(buttonPressed = true),并在扩充布局后设置可见性。后者会更容易。