当前位置: 首页 > news >正文

浙江省住房和城乡建设局网站首页赣州推广平台

浙江省住房和城乡建设局网站首页,赣州推广平台,广州市建设招标管理办公室网站,邹平做网站哪家好目录 前言 一、Activity简介 二、任务栈相关概念 三、常用Flag 四、结束当前Activity 五、Intent跳转Activity 六、更多资源 前言 Android是目前全球最流行的移动操作系统之一#xff0c;而Activity作为Android应用程序的四大组件之一#xff0c;是Android应用程序的核…目录 前言 一、Activity简介 二、任务栈相关概念 三、常用Flag 四、结束当前Activity 五、Intent跳转Activity 六、更多资源 前言 Android是目前全球最流行的移动操作系统之一而Activity作为Android应用程序的四大组件之一是Android应用程序的核心之一。学习Activity组件对于Android开发者来说是非常重要的因为它是Android应用程序的入口负责管理应用程序的生命周期、处理用户交互等重要任务。         本篇文章将深入学习Activity组件包括Activity的生命周期、启动模式、任务栈等重要概念以及如何在应用程序中使用Activity组件。通过本文的学习读者将能够深入了解Activity组件的工作原理掌握Activity的使用方法为开发高质量的Android应用程序打下坚实的基础。 一、Activity简介 Activity是四大组件中最重要的一个也是平时开发中接触最多的。与Activity启动行为相关的就是它的启动模式Standard、SingleTop、SingleTask、SingleInstance这4种launchMode相信大家不陌生。         OK熟悉了4种launchMode后相信你已经对Activity任务栈有一些理解了能应对一些常见的开发场景了。然而除了4种launchMode还有更复杂的控制Activity行为的方式那就是给启动Activity的Intent添加flag使用 Intent.addFlags(int flags) 方法。 看一下这个方法的参数总共有20种 Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT,Intent.FLAG_ACTIVITY_CLEAR_TASK,Intent.FLAG_ACTIVITY_CLEAR_TOP,Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET,Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS,Intent.FLAG_ACTIVITY_FORWARD_RESULT,Intent.FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY,Intent.FLAG_ACTIVITY_LAUNCH_ADJACENT,Intent.FLAG_ACTIVITY_MULTIPLE_TASK,Intent.FLAG_ACTIVITY_NEW_DOCUMENT,Intent.FLAG_ACTIVITY_NEW_TASK,Intent.FLAG_ACTIVITY_NO_ANIMATION,Intent.FLAG_ACTIVITY_NO_HISTORY,Intent.FLAG_ACTIVITY_NO_USER_ACTION,Intent.FLAG_ACTIVITY_PREVIOUS_IS_TOP,Intent.FLAG_ACTIVITY_REORDER_TO_FRONT,Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED,Intent.FLAG_ACTIVITY_RETAIN_IN_RECENTS,Intent.FLAG_ACTIVITY_SINGLE_TOP,Intent.FLAG_ACTIVITY_TASK_ON_HOME, 二、任务栈相关概念 在分析具体的flag之前介绍一些Activity任务栈相关的概念Activity、task、tasks、recent tasks list。这些概念都是抽象的除了Activity和recent tasks list看得见之外其他都是看不见摸不着的。 1.Activity 活动这个就不用解释了 2.task 任务         它是应用中的放置活动的一个类似于栈的结构。栈顶的是最上面的活动也就是用户直接看到的页面顶部以下的活动都处于onStop状态如果是可见的那么处于onPause状态。一般连续按返回键能自顶向下销毁活动。上图中的悬浮窗表示一个任务在这个任务中启动了20多个活动。 3. tasks 一个应用的所有任务         虽然单个task是比较常见的应用但是一个应用可以有多个task创建新的task有好几种方法。 4. recent tasks list 最近任务列表         老的安卓系统中长按home键出现的页面新的系统直接按导航栏中的正方形按钮。这个列表表示最近启动的应用的tasks表中每一项表示一个入口。需要注意的是一个应用可能会出现多个入口因为应用可能有多个任务当然不一定每个任务都会出现在列表中。 三、常用Flag 1.FLAG_ACTIVITY_NEW_TASK 设置这个flag新启动的activity就会被放置到一个新的任务当中与singleTask有点类似但不完全一样当然这里讨论的还是启动其他应用程序的activity。这个flag的作用通常是模拟一种Launcher的行为即列出一推可以启动的东西但启动的每一个Activity都是在运行在自己独立的任务当中的。 2.FLAG_ACTIVITY_CLEAR_TOP 设置了这个flag如果要启动的Activity在当前任务中已经存在了并且还处于栈顶的位置那么就不会再次创建这个Activity的实例而是直接调用它的onNewIntent()方法。这种flag和在launchMode中指定singleTop模式所实现的效果是一样的。 3.FLAG_ACTIVITY_SINGLE_TOP 设置了这个flag如果要启动的Activity在当前任务中已经存在了就不会再次创建这个Activity的实例而是会把这个Activity之上的所有Activity全部关闭掉。比如说一个任务当中有A、B、C、D四个Activity然后D调用了startActivity()方法来启动B并将flag指定成FLAG_ACTIVITY_CLEAR_TOP那么此时C和D就会被关闭掉现在返回栈中就只剩下A和B了。 四、结束当前Activity 方法1 finish();方法2 System.exit(0);方法3 android.os.Process.killProcess(android.os.Process.myPid());方法4 this.onDestory(); 五、Intent跳转Activity 1.假设目前已经启动了3个Activity分别叫做FirstActivity,SecondActivity,ThirdActivity现在想在ThirdActivity中跳转至FirstActivity即再启动一个FirstActivity但不是变成1,2,3,1而是变成1即销毁掉中间所有的activity同时要求保留FirstActivity上的数据。 Intent intent new Intent(this,FirstActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//关掉所要到的界面中间的activity intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);//设置不要刷新将要跳转的界面 startActivity(intent); 2.与1类似假设目前已经启动了3个Activity分别叫做FirstActivity,SecondActivity,ThirdActivity现在想在ThirdActivity中跳转至FirstActivity即再启动一个FirstActivity但不是变成1,2,3,1而是变成1即销毁掉中间所有的activity这里要求不保留FirstActivity上的数据。 Intent intent new Intent(this,FirstActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);//关掉所要到的界面中间的activity startActivity(intent); 3.假设目前已经启动了3个Activity分别叫做FirstActivity,SecondActivity,ThirdActivity Intent intent new Intent(this,FirstActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); startActivity(intent);六、更多资源 ✨还可以关注宫纵号《编程乐学》菜单栏有很多优质的开源项目以及更多的编程资料等你来学习。
http://www.dnsts.com.cn/news/165905.html

相关文章:

  • 网站建设学习心得俄文淘宝网站建设
  • 戴尔网站建设目标长治网站制作小程序
  • 电子商务网站建设与实践新版 网站在建设中...
  • 企业网站建设的收获广告策划ppt案例
  • 济南电商网站开发银川百度做网站多少钱
  • 网站记登录账号怎么做做企业网站怎么收费的
  • 珠海做网站那家好网络电商平台有哪些
  • 上海营销网站建站公司美工做图哪个网站好
  • 一流的扬中网站建设小程序开发制作流程
  • 网站收录差舟山企业网站建设
  • 南宁网络建站自己做的网站别人
  • 媒体村网站建设公共交易中心招标网
  • 做百度网站还是安居客网站铜陵市建设局网站
  • app网站建设工作师青岛开发区网站
  • 有用dojo做的网站吗网页设计与网站建设课程报告
  • aspnet网站开发实例python简单小游戏代码
  • 四川省微信网站建设推广扶贫网站建设方案
  • 网站规划思想方法有哪些内容免费做网站软件视频
  • 如何做网站策划精美wordpress主题
  • 定制化网站建设公司网站打开速度慢的原因
  • 网络建站程序河南做网站高手排名
  • 网站信息化建设建议书wordpress高级套餐
  • 网站开发历史王烨峰
  • 嵩县网站建设深圳ui设计公司
  • 工信部网站备案要求网站建设素材使用应该注意什么
  • 网站后台清除缓存在哪做淘客需要网站
  • 哪个网站是免费的免费域名备案
  • 哪里有做图片的网站wordpress头部图片
  • 如何开办网站王烨辉
  • 网站空间期限查询品牌注册证