2

クリックすると新しいアクティビティ (これからはレシピ アクティビティ) が開き、画像、2 つのテキスト ビュー、およびチェック ボックスが表示されるアイテムのリストがあります。

リストは、文字列配列を含む xml ファイルによって生成されます。クリックされた内容に応じて、レシピ アクティビティは別の xml ファイルから取得された情報を表示します。このようなもの:

1.(一覧)

(String product = ((TextView) view).getText().toString();)

2.(レシピ活動中)

if(product.equals("Naan")) sastojci = getString(R.string.sNaan);

とにかく、問題は次のとおりです。

製品変数を読み取ることができるチェックボックスが必要です。それが以前に選択されたかどうかを確認し、お気に入り (共有設定) に入れられたかどうかに応じて、正しい状態 (チェックされているかどうか) を表示します。

現在、選択したリストのどのアイテムにも同じチェックボックスがあるため...最初のアイテムを選択すると、すべてのアイテムでチェックされたままになります。チェックされていない場合も同じです...

どうすればこのようなことができますか?

4

1 に答える 1

3

わかりました、私はそれを手に入れたと思います...

まずCheckBox、選択した文字列の状態を保存します。

SharedPreferences mySettings = getSharedPreferences("mySettingsfile", MODE_PRIVATE);

mySettingsfile.Editor prefEditor = mySettings .edit(); 
prefEditor.putBoolean("selectedstring", myCheckbox.isChecked());
prefEditor.commit();

次に、設定をロードします

SharedPreferences mySettings = getSharedPreferences("mySettingsfile", MODE_PRIVATE);
myCheckbox.setChecked(mySettings .getBoolean("selectedstring", false));

ここでは、各文字列のチェック状態が個別に格納されます。

于 2012-09-20T13:55:51.907 に答える