0

次のような単純な数独解決アプリを作成しました: LINK

ボタンを押すとキーパッドが表示され、そのボタンに割り当てる番号を選択できます。典型的な使用例はおそらく、ユーザーがアプリを開いて、解決したい数独パズルを構成するすべての数字を割り当ててから、解決ボタンを押すことです。

Android に関する私の理解では、これにより多くのメイン アクティビティとキーパッド アクティビティで構成されるタスクが作成されます (キーパッドはダイアログとしてのアクティビティです)。新しい番号を割り当てるたびに、キーパッドが表示されたときにメインのアクティビティの上にキーパッド アクティビティを配置します。次に、数字を選択してキーパッドが消えると、キーパッド アクティビティの上に別のメイン アクティビティが配置されます。

これは、本当に必要のない多くのアクティビティを取得する方法ですか? 私はこのことを誤解していますか?

起動モードとインテント フラグを使用して、同じメイン アクティビティとキーパッドを何度も再利用する必要がありますか、それとも標準バージョンを使用しても問題ありませんか?

4

1 に答える 1

0

あなたの問題について私が理解していることから、Intent Flag FLAG_ACTIVITY_REORDER_TO_FRONT. がすでにスタックにある場合Activityは、それが言うように、それをスタックの一番上に持ってくるので、複数のインスタンスがありません。

何かのようなもの

 Intent i = new Intent(MainActivity.this, KeypadActivity.class);
 i.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
 startActivity(i);

ここで利用可能なすべてをドキュメントで見つけることができますFlags

また、使い終わったときにfinish()キーパッドを呼び出して次のキーパッドに移動すると、スタックから取り除かれます。Activity

Google ナビゲーションのプレゼンテーション

于 2013-08-16T00:24:36.557 に答える