2017-12-20 4 views
0

すべてがフラグREORDER_TO_FRONTで開かれている4つのアクティビティを作成しました。アクティビティフラグFLAG_ACTIVITY_REORDER_TO_FRONTが期待どおりに機能しない

  • I開いた順に活動A、B、C及びD
  • すぐスタックである - > B - > C - > D
  • 今は開いて活動A再度、スタックさB - > C - > D - >
  • 私は戻ってクリックすると、アプリが最小限ではなく

は、この上で私を助けてくださいD.に行きます。

MainACtivity以下の私の4つのactivites見つけてください:

public class MainActivity : AppCompatActivity 

{ 

    protected override void OnCreate(Bundle bundle) 
    { 
     base.OnCreate(bundle); 
     SetContentView(Resource.Layout.Main); 
     var textView = this.FindViewById<TextView>(Resource.Id.textView); 
     textView.Text = "A"; 
     textView.Click += TextView_Click; 

    } 

    private void TextView_Click(object sender, EventArgs e) 
    { 
     var intent = new Intent(this, typeof(ActivityB)); 
     intent.SetFlags(ActivityFlags.ReorderToFront); 
     this.StartActivity(intent); 
    } 
} 

ACtivityB:

​​

ActivityC

public class ActivityC : AppCompatActivity 

{ 

    protected override void OnCreate(Bundle savedInstanceState) 
    { 
     base.OnCreate(savedInstanceState); 

     SetContentView(Resource.Layout.Main); 
     var textView = this.FindViewById<TextView>(Resource.Id.textView); 
     textView.Text = "C"; 
     textView.Click += TextView_Click; 
    } 

    private void TextView_Click(object sender, EventArgs e) 
    { 
     var intent = new Intent(this, typeof(ActivityD)); 
     intent.SetFlags(ActivityFlags.ReorderToFront); 
     this.StartActivity(intent); 
    }  
} 

ActivityD:

public class ActivityD : AppCompatActivity 

{ 

    protected override void OnCreate(Bundle savedInstanceState) 
    { 
     base.OnCreate(savedInstanceState); 
     SetContentView(Resource.Layout.Main); 
     var textView = this.FindViewById<TextView>(Resource.Id.textView); 
     textView.Text = "D"; 
     textView.Click += TextView_Click; 
    } 

    private void TextView_Click(object sender, EventArgs e) 
    { 
     var intent = new Intent(this, typeof(MainActivity)); 
     intent.SetFlags(ActivityFlags.ReorderToFront); 
     this.StartActivity(intent); 
    } 
} 
+4

4つのアクティビティを作成しましたか?私は何の活動も見ません。 – ADM

+0

@ramanji boyapati関連コードを投稿 –

+0

@ADMアクティビティを追加しました。確認してください。ありがとうございました。 –

答えて

0

活動のための4つの起動モードがあります。彼らは以下のとおりです。

  1. 標準

  2. singleTop

  3. singleTask

  4. singleInstance

参照:https://android.jlelse.eu/android-activity-launch-mode-e0df1aa72242

起動モードについて学んでください。

+0

私に教えてください.... –

+0

私は持っている起動モードで試しました。私は単一インスタンスを使用しています。これは正常に動作しています。しかし、私がSAMSUNG Galaxy s5の電話機でシングルインスタンスの起動モードを使用すると、アプリの複数のインスタンスを開く。 –

関連する問題