2017-09-07 2 views
0

私はfragmentを使用してmainActivityを持っています。私は2つのアクティビティActivity1Activity2を持っています。私はfragmentActivity2に行く、Activity2の戻るボタンをクリックすると、私はfragmentページに戻る必要があります。 それは私が私のActivity2を完了し、ワンクリックで私のActivity1を終える必要があることを意味する。どのように私はこれを得ることができます。ここに私のバックプレスコードはActivity2です。私の活動を終えて、フラグメントに戻るボタンをクリックしてフラグメントにデータを消去しないでください。

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 

    // handle arrow click here 
    if (item.getItemId() == android.R.id.home) { 
     if(fromString.equalsIgnoreCase("Activity2")){ 
      this.finish(); 
      Activity1.finish(); 

     }else if(fromString.equalsIgnoreCase("Activity1"){ 

      finish(); // close this activity and return to preview activity (if there is any) 

     } 
    } 
    return super.onOptionsItemSelected(item); 
} 
+0

あなたのフラグメントでこの答えを試してみてください。https://stackoverflow.com/a/6198068/8089770 –

答えて

0

は限り私はあなたの質問によって理解することができる午前とあなたはactivity2からであれば、あなたがactivity1との両方activity1とactivity2からであればactivity1を終了したいです。次の2つの方法でこれを達成することができます

最初の方法:このコードによって、あなたのコードを置き換えます。

@Override 

公共ブールonOptionsItemSelected(MenuItemのアイテム){

// handle arrow click here 
if (item.getItemId() == android.R.id.home) { 
    if(fromString.equalsIgnoreCase("Activity2")){   
     Activity1.finish(); // I have change the sequence of lines by that it will finish Activity1 first then Activity2 in which is residing 
     this.finish(); 

    }else if(fromString.equalsIgnoreCase("Activity1"){ 

     finish(); // close this activity and return to preview activity (if there is any) 

    } 
} 
return super.onOptionsItemSelected(item); 

}

第2の方法:あなたはすべてのあなたのbacこのコードによって、k個のスタック活動とは、このコードによって、あなたの期待される活性またはその断片に貸す:

Intent gotoexpectIntent = new Intent(yourActivity.this,yourexpectedActivity.class); 
gotoexpectIntent .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); 
startActivity(gotoexpectIntent); 
+0

私はすでに試しています。いいえそれは運動しません –

+0

と2番目の方法も試してみましたが、これは新しい活動として開始した私のデータを消去します –

0

それはまだあなたが求めているものは不明です。バックプレスで複数のアクティビティを終了するには、開始アクティビティを試してそこから進んでください。

+0

私の質問は私が私がactivity1からfragmenに戻り、私は活動2の断片に戻る –

関連する問題