私が作成しているアプリでは、MainMenu アクティビティに Preferences というクラスへのオブジェクトがあります。このオブジェクトを複数のページで使用したいと考えています。オブジェクトには、数値の配列を含むクラスがあります。別のアクティビティ (フィルム) で使用すると、オブジェクト内の数字の 1 つが変更されます。次に、メイン メニューに戻り、数値の配列を画面に表示する新しいアクティビティ (CurrentPrefs) に移動します。数値を表示すると、Film ファイルに加えられた変更が含まれていませんでした。そこで、変数を使って少しテストを始めました。
開始アクティビティである MainMenu を開始すると、オブジェクトが設定されます。次に、フィルムに入ってオブジェクトを確認すると、同じ名前 (object.toString()) のままです。また、値が正しく変更されていることを確認しました。
次に MainMenu に戻り、再度確認しました。オブジェクトは同じ名前のままで、値も Film で変更したようなものでした。
最後に、CurrentPrefs アクティビティに入りましたが、そこでうまくいきません。オブジェクトは突然別の名前になり、加えた変更も含まれなくなりました。
オブジェクトが変更されたのはなぜですか? さらに重要なことに、オブジェクトが変更されず、どこでも同じままであることを確認するにはどうすればよいでしょうか?