0

デフォルトで、xmlを使用して一連のImageButtonを表示するAndroidアプリケーションがあります。ユーザーは、入力に基づいて画像を変更します。次回ユーザーがアプリをロードしたときに、変更された ImageButtons を表示しようとしています。

例: ImageButton は Android.png として開始します (デフォルトの xml ページからロードされます) ユーザーがテキストを入力します ImageButton は Correct.png に変更されます

次回アプリをロードするときに、Android.png の代わりに Correct.png を表示したいと考えています。アプリが起動する前に ImageButtons を反復処理して (ボタンはプログラムで作成されません)、アプリケーションが読み込まれる前にそれぞれのソース値を設定する方法はありますか?

4

2 に答える 2

0

を使用してこれを実行するより良い方法SharedPreferences

SharedPreferences sharedPref = getSharedPreferences("userpref", Activity.MODE_PRIVATE);

String image = pref.getString("userchoice","no-image");

if(image.equeals("no-image")
{
     imageView.setBackgroundResource(R.drawable.android);
}
else
{
     //compare here your image
     imageView.setBackgroundResource(R.drawable.Correct);
}

ユーザーが他の画像を選択するたびに、preference次のコードを使用してファイルを編集するだけです。

SharedPreferences.Editor editor = pref.edit();
editor.putString("userchoice","Correct.png");
于 2012-12-19T20:41:15.740 に答える
0

各ボタンに findViewById(R.id.button_1) を使用して、必要に応じて設定できます。次に、必要な値を保存して、これらの値を読み込んでそれぞれの ImageButton ソースを設定できるようにする必要があります。変更する必要がある量に応じて、SharedPreferences または SQLite データベースのいずれかに保存できます。

たとえば、次のようになります。

ImageButton b = (ImageButton)findViewById(R.id.button_1);
b.setImageDrawable(drawable);

チェックボックスにドローアブルをロードして、1 回だけ実行する方が効率的です。または、ImageResource を R.drawable.correct に設定することもできます。これは、チェックボックスがおそらく複数の画像。

于 2012-12-19T19:09:59.353 に答える