Activity活动生命相关
启动与结束
页面跳转:
startActivity(new Intent(this,xxxx.class));
关闭当前界面返回上一界面
finish();
//这里我在使用finish遇到一个问题,同时设定了三个活动ABC,A作为主界面启动BC两个活动;其实B为简单的界面演示,C为计算器
//我为两个活动分别添加了除ID以外完全相同的参数,但是在点击返回按钮时(此时B点击监听器内仅包含finish,而C中包含一些包括计算器相关的监听事件)
//B会正常返回A页面,而在C中会可能直接导致程序崩溃,并且会让app图标在桌面上消失
//个人感觉可能和生命周期有关,不太清楚,后续留着问老师


activity启动模式
1.standard
该模式是默认模式,类似于栈的方式
2.singleTop
该模式为栈顶复用模式,大概方法基于栈,但是如果要创建的新activity和栈顶的activity相同,那么将不会创建
3.singleTask
该模式与singleTop类似,不同的是,如果新创建的activity与栈内某一activity相同,将会导致新activity不被创建,依次弹出activity直到到达本activity
应用场景:主界面/耗费系统资源的activity
4.singleInstance
该模式的栈内存为1,但是会产生多个栈,如果要创建已经的activity,那将会唤醒旧的activity
如果我在创建了AB两个页面,两个页面来回跳转,那么栈中会生成很多个ABABABA的activity 如何完善这一问题
//首先创建一个意图对象
Intent intend = new Intent (this,XX.class);
//栈中存在待跳转的活动实例时,重新创建,并清楚该活动上部的活动实例
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
登录成功不再进行登录问题:
登录成功之后信息就会被记录,每次登录时信息都不用再次输入
//启动标志为:跳转到新页面时,栈中原有的页面被清空,同时会创建新的栈
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG.ACTIVITY_NEW_TASK);

代码内可以进行动态修改
Activity活动生命相关的更多相关文章
- Activity(活动)生命周期(3)--活动的生存期
Activity类中定义了7中回调方法,覆盖了活动生命周期的每一个环节. 回调方法: 1.onCreate() 这个方法会在活动第一次被创建的时候调用.我们应该在这个方法中完成活动的初始化操作,比如: ...
- Activity(活动)生命周期(2)--活动状态
每个活动在其生命周期中最多会有4种状态 一.运行状态 当一个活动位于返回栈的栈顶的时候,这时活动就处于运行状态.系统一般不会回收,因为这会带来非常差的用户体验 二.暂停状态 当一个活动不处于栈顶状态的 ...
- Activity(活动)生命周期(1)--返回栈
Android是使用任务(task)来管理活动的,一个任务就是一组存放在栈里的活动的集合,这个栈也被称为返回栈(Back stack).栈是一种后进先出的数据结构,在默认情况下,每当我们启动了一个新的 ...
- Android学习之基础知识四-Activity活动5讲(Activity的生命周期)
一.返回栈 1.Android是通过任务(Task)来管理活动,一个任务就是一个返回栈内所有活动的集合. 2.返回栈是一个后进先出的数据结构,每启动一个新的活动,该活动就会覆盖原来的活动,位于栈顶位置 ...
- android:activity活动的生命周期
掌握活动的生命周期对任何 Android 开发者来说都非常重要,当你深入理解活动的生命 周期之后,就可以写出更加连贯流畅的程序,并在如何合理管理应用资源方面,你会发挥的 游刃有余.你的应用程序将会拥有 ...
- Android开发之Activity的生命周期以及加载模式
本篇博客就来好好的搞一下Activity的生命周期,如果搞过iOS的小伙伴的话,Activity的生命周期和iOS中ViewController的生命周期非常类似.生命周期,并不难理解.一个人的生命周 ...
- Android之Activity的生命周期
PS:写一发关于Activity的生命周期,也算是面试的重点内容. 学习内容: 1.Activity的生命周期 2.面对多种情况的时候Activity的生命周期 3.onSaveInstanceSta ...
- Android Activity的生命周期详解
应用程序中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应. Activity之间通过Intent进行通信.在Intent 的描述结构中,有两个最 ...
- Android开发艺术探索(一)——Activity的生命周期和启动模式
Activity的生命周期和启动模式 生命周期有? 1.典型情况下的生命周期—>指有用户参与的情况下,Activity所经过的生命周期改变 2.异常情况下的生命周期—>指Activity被 ...
- Activity的生命周期和启动模式
Activity的生命周期分析 典型情况下的生命周期.是指在用户参与的情况下,Activity所经过的生命周期的改变. 异常情况下的生命周期.是指Activity被系统回收或者由于当前设备的Confi ...
随机推荐
- 使用计算巢打造纯内网部署的PaaS服务
私有化部署PaaS软件的公网访问需求 在阿里云计算巢,我们发现,很多本来应该只在VPC内网使用的三方PaaS软件和中间件,在部署时都开启了公网IP,这并不符合最佳实践. 以数据库为例,数据库保存了对企 ...
- zabbix笔记_004 监控Windows主机
zabbix监控Windows主机 zabbix for windows 安装包下载地址: https://www.zabbix.com/cn/download_agents#tab:34 下载zab ...
- MYSQL 移机重装步骤(windows11)
MYSQL 移机重装步骤(windows11) 目的:已有电脑 A,D盘安装有mysql(安装方式为免安装) , 准备在另一台电脑B上,复制安装电脑A上的mysql(8.0.23版本) . 要 ...
- k8s——pod(label和selector)
k8s的label和selector 在Kubernetes中,label和selector是两个重要的概念,它们一起用于实现资源对象的关联和调度. label 创建label 有两种方式创建labe ...
- js布尔类型
<!-- 禁用 --> <input type="text" disabled> <!-- 只读 --> & ...
- 面向对象编程 es5和es6的构造函数
/* 面向对象编程 本质 创建一个对象 可以用 属性属性值的 方式 存储 数据参数 ...
- LeetCode 680. Valid Palindrome II 验证回文字符串 Ⅱ(C++/Java)
题目: Given a non-empty string s, you may delete at most one character. Judge whether you can make it ...
- Linux扩展篇-shell编程(十一)- shell编程工具-VS Code
根据个人多年工作经验,shell没有自己专用的IDE,使用vim开发,对于新手而言不太友好,那如何高效快速书写shell脚本?合适的工具就显得尤为重要,本人比较推荐的就是VS Code.里面有比较成熟 ...
- linux系统下,配置多个tomcat服务
安装jdk时配置的环境变量 export JAVA_HOME=/usr/local/jdk1.8.0_311 export JRE_HOME=$JAVA_HOME/jre export PATH=$P ...
- Kubernetes OOM 和 CPU Throttling 问题
介绍 使用 Kubernetes 时,内存不足(OOM)错误和 CPU 限制(Throttling)是云应用程序中资源处理的主要难题.为什么呢? 云应用程序中的 CPU 和内存要求变得越来越重要,因为 ...