如何通过后退按钮从第3个活动返回到第2个活动?

时间:2018-05-03 09:19:17

标签: android android-activity

我刚刚启动了android编程,我创建了3个活动。每个活动中的一个按钮将打开另一个。我可以从我的第二个活动导航回到我的第一个活动但是我无法从我的第三个活动导航回到我的第二个活动。这里是我尝试了但是当我点击后退按钮时应用程序崩溃了。我想它正试图从第三个活动跳到第二个活动。如果它有助于我的第二个活动的java文件被称为 CountryDetails.java

 public class WikiPage extends AppCompatActivity {

    @Override

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_web);

        getSupportActionBar().setTitle(R.string.title_activity_wikipedia_details);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
    }
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        super.onCreateOptionsMenu(menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            // Respond to the action bar's Up/Home button
            case android.R.id.home:
                NavUtils.navigateUpFromSameTask(this);
                return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

3 个答案:

答案 0 :(得分:4)

只需拨打onBackPressed()而不是NavUtils.navigateUpFromSameTask(this)

答案 1 :(得分:3)

  • 删除 NavUtils.navigateUpFromSameTask(this);

您应该只使用onBackPressed()

  

当活动检测到用户按下背面时调用   键。默认实现只完成当前活动,   但你可以覆盖它来做任何你想做的事。

case android.R.id.home:
    onBackPressed();
    return true;

答案 2 :(得分:0)

使用 onBackPressed() 代替 NavUtils.navigateUpFromSameTask(this) 进行活动backstake manage