0

FirstActivity私のサンプル アプリには、名前とを持つ 2 つのアクティビティがありSecondActivityます。から、SecondActivityモバイルの戻るボタンを使用して意図を介してデータを渡したいのですが、ここでも を終了したいのですSecondActivityが、 の戻るボタンを押すと に戻りますが、SecondActivity終了FirstActivityしませんSecondActivity。を終わらせる方法を教えてくださいSecondActivity

public boolean onKeyDown(int keyCode, KeyEvent event) 
     {
         if ((keyCode == KeyEvent.KEYCODE_BACK))
         {  
             Intent intent = new Intent(SecondActivity.this,FirstActivity.class);
             //intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

             intent.putExtra("Data1", data1);
             intent.putExtra("Data2", data2);

             startActivity(intent);
             finish();   
         }
         return true;
     }
4

4 に答える 4

1

startActivityForResultFirstActivityで使用し、2番目のアクティビティを終了する前に、setResultメソッドを使用します。

于 2013-02-05T10:41:25.823 に答える
0
@Override
public void onBackPressed() {
        super.onBackPressed();
        this.finish();
}
于 2013-02-05T10:41:50.773 に答える
0

多分これはうまくいきます:

// Back Button Press
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK) {
            Intent intent = new Intent(SecondActivity.this,FirstActivity.class);
                //intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

                intent.putExtra("Data1", data1);
                intent.putExtra("Data2", data2);

                startActivity(intent);
                SecondActivity.this.finish();  
                return true;
        }
        return super.onKeyDown(keyCode, event);
    }
于 2013-02-05T12:30:03.200 に答える
0

あなたがしていることを行う正しい方法であるstartActivityForResult()のドキュメントを調べる必要があります。

しかし、はい、上記の例でSecondActivity.this.finish()はうまくいくはずです。

于 2013-02-05T10:42:49.270 に答える