Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android保存布局状态_Android_Android Layout - Fatal编程技术网

Android保存布局状态

Android保存布局状态,android,android-layout,Android,Android Layout,我有一个关于在Android中保存布局文件状态的问题。例如:我有一个按钮,当我单击该按钮时,会出现一个图像。但当我旋转我的Android设备时,图像消失了。那么如何在布局中保存图像的状态(可见/不可见)?我知道我必须在活动中把它放在Android清单中: android:configChanges="keyboardHidden|orientation" 提前谢谢 编辑 如何与ImageView交互: Button imageloader = (Button) findViewById(R.i

我有一个关于在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);
    }
});

您可以像这样保存和恢复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
属性。您可以删除它。

查看onSaveInstanceState()和onRestoreInstanceState()。我做了,但到处都有人在谈论savedInstanceState.putDouble、savedInstanceState.putString等。但我只想保存布局的状态。张贴如何加载图像,我会帮助您。