繁体   English   中英

如何在其他所有活动之上发起活动?

[英]How can I launch an activity to be on top of all other activities?

我正在尝试创建一个定义两个活动的应用程序。 第一个活动几乎一直都在运行。 第二项活动要求用户进行身份验证才能使用设备。

大多数情况下,此应用程序运行良好。 但是,我在弄清楚如何将第二个活动强制到窗口堆栈顶部时遇到问题。 该代码调用startActivity传入一个意图以启动第二个活动。 问题在于,当另一个应用程序正在运行时(例如,Web浏览器),第二个活动不在最上面。 当其他应用程序退出时,第二个活动可见,以接受用户的输入。

这是第二个活动的活动定义,我希望在开始时总是将其放在最前面:

    <activity android:name=".Authenticate"
              android:launchMode="singleTop"
              android:configChanges="orientation|keyboardHidden">
    </activity>

据我了解,当调用start活动时,它将把新活动放在首位。 有什么我想念的吗? 启动身份验证活动时该如何使其达到最高?

AFAIK,您不能强迫您的活动始终保持领先。 如果在创建活动之后,其他某个进程(例如Web浏览器)创建了活动,则该活动将具有焦点而不是您的焦点。

每当一个新的活动开始时,它就位于堆栈的顶部,并且如果另一个应用程序正在运行,则它将位于堆栈的顶部,如果您希望活动位于堆栈的顶部,则应该停止启动其他应用程序...是否有我想念的东西,然后让我知道。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM