MainActivity
で定義されているいくつかのメソッドを実行しようとしていますが、SecondActivity
という別のアクティビティで実行しています。これらのメソッドは、MainActivity
で定義された変数も変更します。Androidの別のアクティビティからのアクティビティのメソッドと変数を使用する
Activity
が別のものをカバーすると、最初のアクティビティがどれだけ長く生き続けるかは保証されず、多くの場合、非常に迅速に破壊されるので、1つのアクティビティでメソッドを呼び出すことに頼ることはできません別のものからActivity
。これは、Androidが動作する方法でもありません。しかし、私がMainActivity
にいるときに使用しているMainActivity
インスタンスをSecondActivity
に入れることは可能でしょうか?
私はすでにMainActivity
Serializable
を作成し、それをメソッドIntent.putSerializableExtra
に渡してみましたが、機能しませんでした。
ありがとうございます!
これは探しているのかどうかはわかりませんが、親クラスのsuper.methodを使用するには、メインクラスを2番目のクラスに拡張することができます。 'SecondActivity extends MainActivity' – CookieMonster
こんにちはジュリア。私は以前にアプリケーションの開始時に作成したものと同じインスタンスを使用する方法を探しています。つまり、私がMainActivityにいるとき、私はMainActivityのインスタンスを使用しています。SecondActivityに行くと、私はそれを保持したいと思います。出来ますか? – Nahue
[ページ](https://developer.android.com/training/basics/activity-lifecycle/recreating.html)をご覧ください。これは便利な機能です。 'アクティビティの状態に関する追加データを保存するには、onSaveInstanceState()コールバックメソッドをオーバーライドする必要があります。このメソッドは、ユーザーがあなたのアクティビティを離れるときに呼び出され、予期せずアクティビティが破棄された場合に保存されるBundleオブジェクトを渡します。 **後でアクティビティインスタンスを再作成する必要がある場合は、同じBundleオブジェクトをonRestoreInstanceState()メソッドとonCreate()メソッドの両方に渡します。 ** ' – CookieMonster