0

共有設定の配列の値を変更したい。共有設定で文字列配列を作成し、それをコードで使用できますか? さまざまな値を入力していて、ユーザーの必要に応じてユーザーに値を変更してもらいたいので、どうすれば可能ですか。これらの値をスピナーで使用したい。

4

3 に答える 3

1

はい、できます。こちらのリンクにあるEgorのコメントを参照してください。共有設定から文字列配列を配置して取得します

それはほとんどあなたが必要とするものです。

于 2012-11-01T05:22:50.480 に答える
0

次のような値を挿入します

registrationPreferencesEditor.putInt("arraylength", a.length);
            for(int i=0;i<a.length;i++)
            {
                registrationPreferencesEditor.putInt("a"+(i+1), a[i]);
            }
            registrationPreferencesEditor.commit();

あなたの価値観を取り戻す

int lengthOfArray = registrationPreferences.getInt("arraylength", 0);
            int b[] = new int[lengthOfArray];
            for(int i=0;i<lengthOfArray;i++)
            {
                b[i] = registrationPreferences.getInt("a"+(i+1), 0);
                Log.e("b"+(i+1),""+b[i]);
            }

その前に、あなたが持っていることを確認してください

SharedPreferences registrationPreferences;
SharedPreferences.Editor registrationPreferencesEditor;
int a[]={1,2,3,4,5};
registrationPreferences  = getSharedPreferences("registrationPreferences",
            MODE_WORLD_READABLE);
      registrationPreferencesEditor= registrationPreferences
            .edit();
于 2012-11-01T05:43:52.347 に答える
0

sharedPrefence に配列を追加することはできません。このドキュメントで定義されているデータ型のみを使用できます。必要なメモリよりも多くのデータを sharedPrefence に入れると、解放されることはありません。そのため、Application クラスを使用できます。アプリが強制停止されると、アプリケーション クラスのメモリは解放されます。

于 2012-11-01T05:18:42.080 に答える