Intent的几种Flag的不同

冬天有点冷,不想写博客。

研究下Intent的几种Flag的不同:

1,FLAG_ACTIVITY_CLEAR_TOP:会清理掉目标activity栈上面所有的activity

Intent intent = new Intent(this, B.class);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

2,FLAG_ACTIVITY_BROUGHT_TO_FRONT:创建目标activity,且位于栈顶

Intent intent = new Intent(this, B.class);
intent.setFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
startActivity(intent);

3,FLAG_ACTIVITY_REORDER_TO_FRONT:如果目标activity存在栈中,将其置顶

Intent intent = new Intent(this, B.class);
intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
startActivity(intent);

4,FLAG_ACTIVITY_NEW_TASK:创建新的activity实例

Intent intent = new Intent(this, B.class);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
时间: 2024-12-12 20:03:10

Intent的几种Flag的不同的相关文章

Activity intent经常使用的 FLAG

Activity intent经常使用的 FLAG Intent.FLAG_ACTIVITY_NEW_TASK 默认的跳转类型,会重新创建一个新的Activity,不过与这种情况,比方说Task1中有A,B,C三个Activity,此时在C中启动D的话,如果在Manifest.xml文件中给D添加了Affinity的值和Task中的不一样的话,则会在新标记的Affinity所存在的Task中压入这个Activity.如果是默认的或者指定的Affinity和Task一样的话,就和标准模式一样了启动

004_Nginx rewrtie 的四种 flag

Nginx rewrtie 的四种 flag 利用nginx的rewrite的指令,可以实现 url 的转向,对于 rewrtie 有四种不同的 flag,分别是 redirect.permanent.break和last.其中前两种是跳转型的flag,后两种是代理型.跳转型是指有客户端浏览器重新对新地址进行请求,代理型是在WEB服务器内部实现跳转的. redirect:302跳转到 rewrtie 后面的地址. permanent:301永久调整到 rewrtie 后面的地址,即当前地址已经永

Android Intent的几种使用方法全面总结

Intent应该算是Android中特有的东西.你能够在Intent中指定程序要运行的动作(比方:view,edit,dial),以及程序运行到该动作时所须要的资料.都指定好后,仅仅要调用startActivity(),Android系统会自己主动寻找最符合你指定要求的应用程序,并运行该程序. 以下列出几种Intent的使用方法 显示网页: Uri uri = Uri.parse("http://www.google.com"); Intent it = new Intent(Inte

Intent 的两种主要使用方法

首先建立两个activity界面 Activity1如下 public class MainActivity extends AppCompatActivity { private Button bt; private TextView t1; private TextView t2; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setCont

Intent的4种传值方法总结

xml 代码: <Button     android:id="@+id/button1"     android:layout_width="wrap_content"     android:layout_height="wrap_content"     android:text="Button1" />   <Button     android:id="@+id/button2"

全屏两种flag设置的区别

(1)不设置 Activity窗口不全屏,状态栏显示. (2)getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,    WindowManager.LayoutParams.FLAG_FULLSCREEN); Activity窗口全屏,状态栏不显示. (3)getWindow().setFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS,   WindowMan

任务栈 Activity的启动模式 Intent中的Flag taskAffinity

关于任务栈Task 栈的概念 栈(Stack)是一种常用的数据结构,栈只允许访问栈顶的元素,栈就像一个杯子,每次都只能取杯子顶上的东西,而对于栈就只能每次访问它的栈顶元素,从而可以达到保护栈顶元素以下的其他元素."先进后出"或"后进先出"就是栈的一大特点,先进入栈的元素总是要等到后进入栈的元素出栈以后才能出栈.递归就是利用到了系统栈,暂时保存临时结果,对临时结果进行保护. 栈的基本操作:压栈.弹栈 任务栈 Task简单的就是一组以栈的模式聚集在一起的Activity

【Android应用开发】Activity intent使用的Flag

Activity intent经常使用的 FLAG Intent.FLAG_ACTIVITY_NEW_TASK 默认的跳转类型,会重新创建一个新的Activity,不过与这种情况,比方说Task1中有A,B,C三个Activity,此时在C中启动D的话,如果在Manifest.xml文件中给D添加了Affinity的值和Task中的不一样的话,则会在新标记的Affinity所存在的Task中压入这个Activity.如果是默认的或者指定的Affinity和Task一样的话,就和标准模式一样了启动

Android基础之Intent 和 Intent 过滤器

Intent是一个消息传递对象,您可以使用它从其他应用组件请求操作.尽管 Intent 可以通过多种方式促进组件之间的通信,但其基本用例主要包括以下三个: 1.启动 Activity: Activity 表示应用中的一个屏幕.通过将 Intent 传递给 startActivity(),您可以启动新的 Activity 实例.Intent 描述了要启动的 Activity,并携带了任何必要的数据.如果您希望在 Activity 完成后收到结果,请调用 startActivityForResult