1

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);
    }
});
4

1 に答える 1

2

iv次のように、ImageView の可視性を保存および復元できます。

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この方法では、マニフェストで属性を使用する必要はありません。あなたはそれを取り除くことができます。

于 2012-07-29T19:33:41.620 に答える