私が書いているアプリには、カーテンの設定を変更できる部分があります。問題は、アクティビティが再作成されるまでこの設定が有効にならないことです。onResume()メソッドを使用してアプリを再起動するように指示する方法はありますか(できれば、onSaveInstanceState()にすべてを保存できるようにします)?
39720 次
2 に答える
32
これは以前に投稿されました:
Intent intent = getIntent();
finish();
startActivity(intent);
APIレベル11以降、アクティビティのrecreate()
メソッドを呼び出すこともできます。これはコードが少ないためクリーンであるだけでなく、アクティビティが暗黙の意図によって開始された場合に発生する可能性のある問題を回避します。
于 2011-04-03T15:27:19.903 に答える
2
おそらく、示されているようにアクティビティを再起動できますが、再起動時に文字列を送り返すために、いくつかのインテント エクストラを渡します。
Intent intent = getIntent();
intent.putExtra(STRINGTOSAVE, "Save this string");
finish();
startActivity(intent);
そしてあなたのonCreateではもちろん文字列を取得したいでしょう
Intent intent = getIntent();
String STRINGTOSAVE = intent.getStringExtra(ActivityName.STRINGTOSAVE);
次に、取得した文字列を使用して、テキストフィールドと必要なその他のアクションを再適用します。
于 2013-01-26T21:22:47.193 に答える