0

クラスAからクラスBにいくつかの値を送信しています

intent.putExtraString("tag1",value1);

クラス B では、これらの値を次の方法で受け入れています。

String value1=getintent.getString("tag1");

クラス BI からインテントを介してクラス C に移動します。次に、クラス C からクラス B に戻ると、値に対して null ポインター例外が発生します。

私の質問は次のとおりです。このフィールドに値を保持する方法1。そのため、C からクラス B に移動したときに、value1 の値を保持する必要があります。(また、value1に静的フィールドを使用しない解決策を教えてください)。

4

2 に答える 2

0

これを行う。A -> B からインテントを渡し、B でそれを受け取ります。B から、同じインテント (キー、値) のペアを C に渡します。したがって、C から戻ったときに、null ポインター例外は発生しません。これが最も簡単な方法です。ベストプラクティスではありません。

代わりに、を使用する必要がありますSharedPreferences。の使用について詳しくわからない場合は、ためらわないでくださいSharedPreferences。その非常に理解しやすいです。

于 2013-05-22T10:46:58.803 に答える
0

まず、静的変数を使用して静的クラスを作成し、クラス A からデータをグローバル変数に割り当て、インテントを介してデータを渡さずにクラス B を呼び出します。クラス B では、グローバル変数からデータを取得して使用し、次にクラス C に移動します。 、クラス B に戻ると、グローバル変数からデータを取得します。これはJavaのデザインパターンの一種です

于 2013-05-22T10:42:43.890 に答える