【问题标题】:Android SingleTask not workingAndroid SingleTask 不工作
【发布时间】:2012-08-14 18:11:52
【问题描述】:

我的应用程序中有多个活动。其中两个是 LoginActivity,第二个是 SettingsActivity。用户登录到设置活动并从设置活动中注销应用程序。应用程序的流程是 LoginActivity -> HomeActivity -> SettingsActivity 。用户在设置活动中从应用程序中调用注销。我在设置活动上调用完成并创建登录活动的意图。这很好用,但是当我按下登录活动的背面时,会出现家庭活动。我希望一旦 LoginActivity 出现,后退按钮应该将应用程序从应用程序中取出。我怎样才能做到这一点 ?

【问题讨论】:

    标签: android


    【解决方案1】:

    我必须使用 .FLAG_ACTIVITY_CLEAR_TASK 才能工作。我读到这在 API 版本 11 之后受支持,这些是否适用于所有以前的版本。其次,我如何使用 Manifest 文件中的这些而不是 java 代码? intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK|Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);

    【讨论】:

      【解决方案2】:

      我相信这就是您正在寻找的:

      How to clear the Android Stack of activities?

      我不会太在意它实际上并没有完成()您的 LoginActivity 的事实 - 这实际上是一个非常正常的模式。

      【讨论】:

        【解决方案3】:

        答案就在FLAG_ACTIVITY_CLEAR_TOP。 您需要做的就是将标志设置为您的意图,如下所示

        Intent i = new Intent(this, LoginActivity.class);
        i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
        startActivity(i);
        finish();
        

        这几乎可以满足您的要求。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2016-02-29
          • 1970-01-01
          • 2012-02-25
          • 1970-01-01
          • 1970-01-01
          • 2014-11-17
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多