- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
从 Android 文档:
FLAG_ACTIVITY_CLEAR_TASK
If set in an Intent passed to Context.startActivity(), this flag will cause any existing task that would be associated with the activity to be cleared before the activity is started. That is, the activity becomes the new root of an otherwise empty task, and any old activities are finished. This can only be used in conjunction with FLAG_ACTIVITY_NEW_TASK.
FLAG_ACTIVITY_TASK_ON_HOME
If set in an Intent passed to Context.startActivity(), this flag will cause a newly launching task to be placed on top of the current home activity task (if there is one). That is, pressing back from the task will always return the user to home even if that was not the last activity they saw. This can only be used in conjunction with FLAG_ACTIVITY_NEW_TASK.
Intent intent = new Intent(this, Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
Intent intent = new Intent(this, Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_TASK_ON_HOME);
startActivity(intent);
Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_TASK_ON_HOME | Intent.FLAG_ACTIVITY_CLEAR_TASK
的 fragment 那会怎样?
最佳答案
2个 fragment 之间存在差异。以下是一些重要的背景信息:
A
中并开始一个新任务 B
,则任务 B
将堆叠在任务 A
之上。如果用户在任务 B
中按下 BACK 键足够多的次数,他最终将返回任务`A。这是标准的 Android 行为。 Intent intent = new Intent(this, Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK);
startActivity(intent);
Activity
与当前任务具有相同的任务关联(即:执行此代码的任务),它将清除当前任务(完成任务中的所有 Activity )并将 Activity
的新实例启动到当前任务中.如果用户按下 BACK 键,这将完成 Activity
并完成当前任务(因为任务中只有 1 个 Activity )并将用户返回到主页屏幕或启动此任务的任务(正在执行的任务)在任务堆栈中的此任务下方)。 Activity
具有与当前任务不同的任务关联,并且已经存在具有该任务关联的现有任务(即:Activity
所属的现有任务),则该现有任务被置于前台,清除(所有任务中的 Activity 完成),在任务的根创建一个新的 Activity
实例,并将这个任务放在当前任务的顶部(这样当 Activity
完成时,用户会被放回到当前任务中)。 Activity
与当前任务具有不同的任务关联,并且没有具有该任务关联的现有任务,则创建一个新任务,并在任务的根创建 Activity
的新实例,并将该任务放在最上面当前任务的(这样当 Activity
完成时,用户会回到当前任务中)。 Intent intent = new Intent(this, Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_TASK_ON_HOME);
startActivity(intent);
Activity
与当前任务具有相同的任务关联(即:执行此代码的任务)并且 Activity
是当前任务的根 Activity ,则不会执行任何操作。它不会启动新任务,不会清除任何 Activity ,不会创建 Activity
的新实例,也不会更改当前任务完成时发生的行为(即:如果当前任务已启动)通过另一个任务,当当前任务中的所有 Activity 都完成时,它会将用户放回到任务堆栈中的前一个任务中)。 Activity
与当前任务具有相同的任务关联(即:执行此代码的任务)并且 Activity
是 而不是 当前任务的根 Activity ,这将简单地创建一个新的 Activity
实例并将其放入在当前任务的当前 Activity 之上。它不会启动新任务,不会清除任何 Activity ,也不会改变当前任务完成时发生的行为(即:如果当前任务是由另一个任务启动的,当当前任务中的所有 Activity 任务完成后,它会将用户放回到任务堆栈中的前一个任务中)。 Activity
具有与当前任务不同的任务关联,并且已经存在具有该任务关联的现有任务(即:Activity
所属的现有任务)并且 Activity
是该现有任务的根 Activity ,则该现有任务任务被带到前台,并且该任务与任务堆栈分离(即:当该任务中的所有 Activity 完成时,它会将用户返回到主屏幕, 而不是 到启动该任务的任务)。 Activity
与当前任务具有不同的任务关联,并且已经存在具有该任务关联的现有任务(即:Activity
所属的现有任务)并且 Activity
是 而不是 现有任务的根 Activity 然后该现有任务被带到前台,并且该任务与任务堆栈分离(即:当该任务中的所有 Activity 都完成时,它将用户返回到主页屏幕和 而不是 到启动该任务的任务) 并创建一个新的 Activity
实例并将其置于该任务中的任何现有 Activity 之上。 Activity
与当前任务具有不同的任务关联,并且没有具有该任务关联的现有任务,则创建一个新任务并在任务的根创建 Activity
的新实例,并将新任务从任务堆栈(以便当 Activity
完成时,用户返回到主屏幕, 而不是 到启动它的任务)。 Intent intent = new Intent(this, Activity.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_TASK_ON_HOME);
startActivity(intent);
Activity
与当前任务具有相同的任务关联(即:执行此代码的任务),它将清除当前任务(完成任务中的所有 Activity )并将 Activity
的新实例启动到当前任务中.如果用户按下 BACK 键,这将完成 Activity
并完成当前任务(因为任务中只有 1 个 Activity )并将用户返回到主页屏幕。 Activity
具有与当前任务不同的任务关联,并且已经存在具有该任务关联的现有任务(即:Activity
所属的现有任务),则该现有任务被置于前台,清除(所有任务中的 Activity 完成),在任务的根创建一个新的 Activity
实例,并且这个任务从任务堆栈中解耦(这样当 Activity
完成时,用户返回到主屏幕)。 Activity
与当前任务具有不同的任务关联,并且没有具有该任务关联的现有任务,则创建一个新任务,并在任务的根创建 Activity
的新实例,并将该任务与任务解耦任务堆栈(以便当 Activity
完成时,用户返回到主屏幕)。 Activity
具有特殊的启动模式)...
关于android - Intent.FLAG_ACTIVITY_CLEAR_TASK 和 Intent.FLAG_ACTIVITY_TASK_ON_HOME 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21833402/
如果我想为收藏创建一个 Intent 。 如果用户问“他最喜欢什么”,它会显示一些建议芯片 因此它会调用与该芯片相关的任何后续 Intent 。 最喜欢的饮料 最喜欢的食物 最喜欢的电影等 我还想直接
我确信有一些显而易见的事情,但还没有找到解决这个简单问题的方法。错误是在用户猜出正确答案时尝试启动另一个 Activity 的主要 Activity : Error:(85, 23) Unresolv
public class MainActivity extends Activity { Button b; //FrameLayout fl; @Override p
我对 intentService 有点困惑。文档说,如果您向 intentService 发送多个任务( Intent ),那么它将在一个单独的线程上一个接一个地执行它们。我的问题是 - 是否可以同时
我正在尝试从其他应用程序获取 mime 类型 text/plain 的 Intent 并将该文本存储在字符串类型的变量中。它在 onCreate 方法中工作正常,但是当我使用 singleTask 作
我想知道,2个代码有什么区别? newIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
如何设置我的 Activity 以响应任何类型的共享 Intent 。 我试过:- 但是这不起作用,我已经阅读了http://developer.android.co
鉴于子类具有不同的上下文以及在单击监听器后启动的不同 Activity ,父类(super class)中的代码 Intent Intent=new Intent(context,Activity.c
更新#1:更多信息添加到这篇文章的末尾 我是 Android 开发和测试的新手。 我有 3 个 Espresso 测试。第一个测试通过,但第二个不会运行,因为在第二个测试之前调用 setUp() 方法
我是 Espresso UI 测试的新手。 我在运行测试时遇到这个错误(ADT Eclipse IDE)。 该应用程序已经开发完成,并且在启动该应用程序时有很多请求正在进行。无法重写应用程序。但我需要
因此,尝试创建一个我认为是基本简历应用程序的应用程序。我有两个类(class),都有同样的问题。它说它“无法解析符号 Intent ” 谷歌部分做了,但没有任何意义.. 这是我的代码。 MainAct
我正在尝试将 user_id 值从一个 Intent 传递到另一个 Intent。我知道这是一个非常简单的过程,而且我已经这样做了好几次了。但对于下面的代码,我有点困惑。 我需要将 user_id 值
这是我将值传递给名为 choice 的类的主要 Activity 。 @Override public void onClick(View v) { // TODO Auto-generated me
我正在寻找一个 Android Intent 来翻译文本,我发现了这个: Google Translate Activity not working anymore 但我想在任务管理器中使用它。我真的
可以设置多个启动 Intent ,例如,当用户点击通知时。 让我解释一下我的具体问题: 我有一个带通知的应用程序。每个通知都会打开一个不同的 Activity (也有不同的附加功能)。 现在我想提取有
我有一个 Intent launchIntent = packageManagerForListener.getLaunchIntentForPackage(packagesForAdapter[po
List targetedShareIntents = new ArrayList(); Intent shareIntent = new Intent(android.content.Intent.
所以我试图在选择列表中的项目后启动一个新 Activity ......根据我所读的内容非常基本。我也在尝试在附加功能中发送一个值。所以我可以选择列表中的项目,然后新 Activity 开始,extr
有没有一种方法可以将一个Intent bundle 从一个 Intent 传递到另一个 Intent ,而不必提取包并单独处理每个额外的 Intent ? 例子: intent2.setExtras(
这个问题在这里已经有了答案: Android 5.0 (L) Service Intent must be explicit in Google analytics (11 个答案) 关闭 6 个月
我是一名优秀的程序员,十分优秀!