当我按主页键时,如何从其他活动返回我的活动?

时间:2012-10-15 08:29:28

标签: android

我从活动A启动活动B,现在我想在按回车键时返回活动A而不是启动器,如何实施?

我发现了一个类似的案例,LockPatternKeyguardView,它启动了一个紧急拨号器,然后按主页键,可以再次返回LockPatternKeyguardView,怎么做?

6 个答案:

答案 0 :(得分:1)

你不能覆盖主页按钮的行为,因为如果你这样做,你可以让用户永远不会退出你的应用程序,Android将不允许你这样做。

答案 1 :(得分:0)

“主页”按钮是一个非常危险的按钮,因此,Android不会让您像使用“返回”按钮一样覆盖其行为。

按下Home按钮时,会在您的活动中调用onStop方法。所以你可以做的是添加finish();在onStop方法中销毁你的活动。最终将引发onDestroy方法以确认您的活动已完成。

答案 2 :(得分:0)

您可以在按按钮时启动活动。为此,您必须将您的活动的行为声明为HOME。

<intent-filter> 
    <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.HOME" /> 
</intent-filter>

但是有这样的缺点:

  1. 按主页按钮时会出现选择器。这将让您决定要启动哪个活动。由于默认启动器应用程序也具有相同的操作(HOME),它将询问您要启动哪个活动。
  2. 当用户按下主页按钮时,您可以将活动设为默认活动。您可以在按下主页按钮后进入选择器对话框时执行此操作,只需选中选择器对话框中的复选框即可。
  3. 在第二种情况下,当您按下主页按钮时,您可以将活动设为默认活动,但是当您要启动其他应用程序时,它不会启动默认的主页时间。所以总是建议不要处理Home按钮。

    此外,您无法像其他键事件(如返回键,菜单键等)一样处理Home键。

答案 3 :(得分:0)

case R.id.home:                     
        Intent i = new Intent(this,Aactivity.class);
        startActivity(i);
        return  true;    

我只知道我出现的一种方式......

答案 4 :(得分:0)

按主页按钮表示用户想要退出您的应用,您不应该覆盖它以保留用户。此外,只有主页按钮才能让用户摆脱卡住的应用程序。考虑将菜单项设为“主页”或覆盖后退按钮。

答案 5 :(得分:0)

当按下主页按钮时,活动进入onStop()状态。在活动B中覆盖onStop()方法并完成活动。如下所示,

 protected void onStop() {
        finish();
        super.onStop();
    }