通过自定义后退按钮返回上一个活动的问题

时间:2011-09-18 19:06:06

标签: android android-activity stack

我有一个自定义后退按钮,暂时只执行后面堆栈上的上一个活动。下面是按钮的代码:

backButton.setOnClickListener(new View.OnClickListener() 
       {
           public void onClick(View v)
           {
              System.out.println("!!! BACK !!!");
              finishActivity(0);
           }
       });

问题是,它不起作用。根本没有变化。

有谁可以告诉我这里做错了什么?感谢。

2 个答案:

答案 0 :(得分:2)

finishActivity 完成您之前使用startActivityForResult()启动的活动,它无法完成您当前所处的活动 - 完成()< / strong>那样做。

答案 1 :(得分:1)

使用finish()代替finishActivity()

finishActivity()强制您通过startActivityForResult()启动的活动退出,但未完成当前活动。您也可以使用onBackPressed(),只在内部调用finish()(请参阅default implementation),因此效果相同。如果您覆盖后退按钮行为,则非常有用。