在自定义启动器中实现主页按钮

时间:2014-03-26 20:35:52

标签: android launcher android-homebutton

我已经编写了一个自定义启动器,它工作得非常好。启动器有一些页面填充了应用程序。我想实现,如果按下homebutton,表示页码的变量设置为0。因此,如果您在启动器的不同页面上并按下主页按钮,则进入起始页面。 我搜索了很多,但无法找到适合我的答案。 我已将应用程序设置为清单中的启动器。

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

有可能实现这一目标吗?如果按下主页按钮,只需更改一个变量的值,并按原样保留主页按钮的其余部分。

1 个答案:

答案 0 :(得分:1)

对于想要做同样事情的每个人。这就是我解决它的方式: 我在清单中添加了以下内容:

<activity
    android:launchMode="singleTask"
    android:clearTaskOnLaunch="true"
    android:stateNotNeeded="true">

并将其写入java活动:

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);
    if (Intent.ACTION_MAIN.equals(intent.getAction())) {
        final boolean alreadyOnHome =
                ((intent.getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT)
                        != Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
        if (alreadyOnHome) {
            Log.d("whatever", "Home pressed");
        }
    }
}

我是从这里得到的:CyanogenMod trebuchet