0

しばらく戻るキーを押しても、アクティビティに対して実行されるアクションはありません。アクティビティで戻るキーを処理するためのコードが返されません。ユーザーがリスト項目をクリックすると、アクティビティが開始されます。お気に入り

Intent intent = new Intent(cxt, MyActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);

実際に起こっていることは、ユーザーが即座に 3 回クリックすると、アクティビティが複数回起動されることです。起動アクティビティを複数回回避するにはどうすればよいですか。OnCreateアクティビティが起動されるたびに呼び出される必要があるため、単一のインスタンス/シングルトンを使用できません。

4

3 に答える 3

0

この場合、Activity を破棄するために Android が呼び出す Activity ライフサイクル コールバックの 1 つで広範な処理を行うと仮定します。

于 2013-01-23T09:27:20.270 に答える
0

Decide wether you start an activity or not outside the activity itself, and consider checking conditions there. You can pass parameters to your new intent based on the conditions.

here is a question on that topic: How to start an Intent by passing some parameters to it?

于 2013-01-23T09:42:03.207 に答える
-1

アクティビティの再起動ごとに呼び出される singleInstance とオーバーライド onNewIntent メソッドを使用したり、ハンドラー ポスト メソッドで高価な操作を分離したりできます。

于 2013-01-23T09:36:56.443 に答える