1

我打开我的第一个活动,它只是第二个活动的加载器,在第二个活动上有按钮,其中一个打开第三个活动。如果我从第三个活动回击而不是去第二个活动只是关闭应用程序。有任何解决这个问题的方法吗?

以下是一些代码片段:

    public void onSegmentStatusButtonClick(View view) {
    Log.d(TAG, "Segment status button clicked.");
    Intent intent = new Intent(this, SegmentStatusActivity.class);
    intent.setFlags(Intent.FLAG_ACTIVITY_PREVIOUS_IS_TOP);
    startActivity(intent);
}

    @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_segment_status);
    TextView txtView = (TextView) this
            .findViewById(R.id.segment_status_msg);
    txtView.setText(new String(getIntent().getByteArrayExtra("data")));
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.segment_status, menu);
    return true;
}

@Override
public void onStop() {
    super.onStop();
    Log.d(TAG, "Executing onStop().");
    finish();
}

@Override
public void onPause() {
    super.onPause();
}

@Override
public void onResume() {
    super.onResume();
}

@Override
public void onStart() {
    super.onStart();
}
4

1 回答 1

8

你正在调用finish()你的onStop(). 我怀疑这是原因。 finish()将表明您已完成 Activity 并随后将触发调用onDestroy()并将其从您的后台堆栈中删除。删除这些调用应该会导致后退导航的行为符合您的预期。仅当您不打算返回活动时,才应完成活动。

于 2013-07-30T20:12:40.737 回答