Android保存布局状态

时间:2012-07-29 19:01:14

标签: android android-layout

我有一个关于在Android中保存布局文件状态的问题。例如:我有一个按钮,当我点击按钮时会出现一个图像。但是当我旋转我的Android设备时,图像就消失了。那么如何在布局中保存图像的状态(可见/不可见)?我知道我必须把它放在活动的Android清单中:

android:configChanges="keyboardHidden|orientation"

提前致谢。

修改

我如何与我的ImageView互动:

Button imageloader = (Button) findViewById(R.id.imageloader);
ImageView iv = (ImageView) findViewById(R.id.iv);
imageloader.setOnClickListener (new View.OnClickListener() {            
    public void onClick(View v) {
    iv.setVisibility(View.VISIBLE);
    }
});

1 个答案:

答案 0 :(得分:2)

您可以像这样保存和恢复ImageView iv的可见性:

ImageView iv;
...

@Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
    iv.setVisibility(savedInstanceState.getInt("Image Visibility", View.GONE));
    super.onRestoreInstanceState(savedInstanceState);
}

@Override
protected void onSaveInstanceState(Bundle outState) {
    outState.putInt("Image Visibility", iv.getVisibility());
    super.onSaveInstanceState(outState);
}

这样您就不需要在清单中使用configChanges属性。你可以删除它。