0

みんな。クラスを使用して、アクティビティ A から入力したデータを保存し、アクティビティ B から同じデータを読み取ることができるかどうかを知りたいです。Android プログラムには、その中のすべてのアクティビティ間で共有したい変数がいくつかあります。

ありがとうございました!

4

3 に答える 3

1

これを行う最も簡単な方法は、これらの変数を何らかのクラスの静的メンバーに格納するか、このすべてのデータを格納できるシングルトン クラスを作成することです。

より複雑な方法は、@codeMagic が推奨するように、共有設定または sqlite db を使用することです。

別のオプションは、ビューを開始するときにアクティビティ間でデータを渡すことですintent.putExtra

于 2013-09-25T15:18:23.693 に答える
1

クラスを使用して、アクティビティ A から入力したデータを格納し、アクティビティ B から同じデータを読み取ることができるかどうかを知りたいです。

はい、しかし、それが良いアイデアであるかどうかは、あなたが何をしているかによって異なります.

Android プログラムには、その中のすべてのアクティビティ間で共有したい変数がいくつかあります。

これらが単純な変数で数が少ない場合は、おそらく を使用するのが最適SharedPreferencesです。

多くの変数がある場合は、SQLite DB を使用してこれらの変数を保存およびアクセスすることをお勧めします。または、ファイルシステムに保存することもできます。

もちろん、データを送信するために使用することもできますputExtra()Intent、これはあなたが望むものではないようです

最適なものを決定するには、ストレージ オプションをお読みください

于 2013-09-25T15:15:06.080 に答える
0

はい、できます。

以下のモックアップクラスを参照してください

public class myVariables
{
    public String myVariable1;
    public int myVariable2;
    public boolean myVariable3;

  //it is not advisable to use public methods, but for the sake of proofing that you can use variables
  //this example uses this method. Ideally, you need to set get / set methods.

}

これで、アプリ クラス内のどこからでも呼び出すことができます

myVariables.myVariable1 = "Hakuna Matata";

それで

Log.i("tag", myVariables.myVariable1); //this will show "Hakuna Matata"
于 2013-09-25T15:26:22.170 に答える