2010-12-01 11 views
0

アクティビティがユーザによって開かれると、それらはビュースタックにスタックされます。 ユーザーが任意の手段でアクティビティを終了すると、ビュースタックからポップされます。Androidでの特定のアクティビティの終了(またはアクセス)

ここでは、ユーザーがホーム画面を開いて、ホーム画面の上に複数のアクティビティを連続して開いた状況があります。各アクティビティには、ユーザーが再びホーム画面を見ることを可能にするコントロールがあります。ビュー・スタックの底からホーム画面を開くと、その上に、それを押して、そのコントロールのプレスに

  1. :私は考えることができたよう

    、これを取得するには、2つのアプローチがあることができ。

  2. コントロールを押すと、ホーム画面が現在の画面になるまで、現在の画面のそれぞれをポップします。

Androidには、少なくともこのいずれか、またはこのような方法がいくつかあります。 私はちょうど何だったのか覚えていない。

私はより良いアプローチを選択し、それを行う方法(コード、具体的に)を教えてください。

どうもありがとう:)

(それが適切でない場合は、タイトル/テキストを編集してください)

答えて

3

あなたがFLAG_ACTIVITY_SINGLE_TOPを設定すると、すべてのです。この

Intent i = new Intent(); 
    i.putExtra(EXTRA_KEY_ARTIST, id); 
    i.setClass(this, ArtistActivity.class); 
    i.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); 
    startActivity(i); 

のようなものを試してみてください新しいアクティビティを開始することはありませんが、まだ破壊されていない場合はあなたのアクティビティが初期作成されていることが表示されます。

アクティビティが開始アクティビティの場合このように置くことができます

+0

私はコードをはっきりと理解することができましたが、XML部分がマニフェストに何を意味するのか、それが役に立つのかというシナリオを得ることができませんでした。途中でありがとう! :-) –

+0

あなたのアクティビティが最初のアクティビティの場合、コードを使用してこのシングレットを設定できますが、このxmlを使用する必要があるAndroidマニフェストファイルを使用する場所はありません – ingsaurabh

+0

こんにちは、ingsaurabh :)アクティビティが一番上に来てから戻るキーを押します。:) –

関連する問題