Android_life,Intent_note
生命周期: 从出生到死亡
Activity生命周期的7个方法和3个循环
onCreate() 创建时调用
onRestart() 不可见到可见时调用
onStart() 用户可见时调用
onResume() 用户可交互时调用
onPause() 用户不可交互时调用
onStop() 用户不可见时调用
onDestroy() 销毁时调用
启动与退出的循环
Activity启动 onCreate() -- onStart() -- onResume()
Activity退出 onPause() -- onStop() -- onDestroy()
可见与不可见的循环
Activity不可见 onPause() -- onStop()
Activity重新可见 onRestart() -- onStart() -- onResume()
焦点失去与获得的循环
Activity失去焦点 onPause()
Activity获得焦点 onResume()
-----------------------------------------
Intent 在组件之间跳转的桥梁
intent分为如下两类:
明确的intent (显式的Intent)
明确指定要跳转的Activity
不明确的intent (隐式的Intent)
没有直接指定要跳转哪个Activity 通过一系列过滤条件筛选要跳转的Activity
1.1 明确intent跳转到相同包下的Activity
intent.setClass()
1.2 明确 intent跳转到不同包下的Activity
intent.setClassName("应用程序的包名", "Activity的包名.Activity类名");
特殊情况是:Activity的包名和应用程序的包名相同,则第二个参数可以简写为".Activity类名"
1.3 明确intent跳转到不同应用下的Activity
intent.setClassName("应用程序的包名", "Activity的包名.Activity类名");
同时,被跳转的Activity需要添加action=MAIN的过滤器
不明确的intent
需要设置的过滤条件有7个:
ComponentName --- 组件名称 用法基本上和setClassName()大同小异
Action -- 动作
Category -- 额外的动作
Data -- 数据(格式为Uri对象)
Extra -- 额外的数据
Flag -- 标识
Type -- 数据的类型(MIME) 多媒体格式的数据类型(文本、图片、音频、视频)
2.1 不明确的intent跳转到相同包下的Activity
跳转的Activity需要设置
intent.setAction("com.second");
同时被跳转的Activity需要在AndroidManifest.xml中设置intent过滤器:
<intent-filter >
<action android:name="com.second"/> --- 与跳转时set一致Action()的参数
<category android:name="android.intent.category.DEFAULT"/> -- 不能省略
</intent-filter>
2.2 不明确的intent跳转到不同包下的Activity 方法同上
2.3 不明确的intent跳转到不同应用下的Activiy 方法同上
Android_life,Intent_note的更多相关文章
随机推荐
- Getting Started Tutorial
Getting Started Tutorial The topics contained in this section are intended to give you quick exposur ...
- CSS属性值一览
牢记内联式>嵌入式(嵌入式中设置各种文字字体.大小.位置.颜色.外距.内距最好用选择器)>外部式(外联式)的使用 属性和属性值(点击可展开) font-family(字体) Microso ...
- Using innodb_large_prefix to avoid ERROR #1071,Specified key was too long; max key length is 1000 bytes
Using innodb_large_prefix to avoid ERROR 1071 单列索引限制上面有提到单列索引限制767,起因是256×3-1.这个3是字符最大占用空间(ut ...
- WPF——数据绑定及属性改变事件
一.首先需要封装一下文本框的属性,并且在实体类中添加一个实体类的属性改变函数 public class User : INotifyPropertyChanged //INotifyPropertyC ...
- POJ 1860 Currency Exchange + 2240 Arbitrage + 3259 Wormholes 解题报告
三道题都是考察最短路算法的判环.其中1860和2240判断正环,3259判断负环. 难度都不大,可以使用Bellman-ford算法,或者SPFA算法.也有用弗洛伊德算法的,笔者还不会SF-_-…… ...
- BrnShop开源网上商城第二讲:ASP.NET MVC框架
在团队设计BrnShop的web项目之初,我们碰到了两个问题,第一个是数据的复用和传递,第二个是大mvc框架和小mvc框架的选择.下面我依次来说明下. 首先是数据的复用和传递:对于BrnShop的每一 ...
- Visual Studio 2012 Professional 密钥
Visual Studio 2012 Professional 密钥 4D974-9QX42-9Y43G-YJ7JG-JDYBP
- [liu yanling]软件测试分为哪几个计划过程阶段
a) 计划阶段:编写测试计划,搭建测试环境,准备测试数据b) 设计阶段:编写测试用例(需求分析和测试用例文档)c) 执行阶段:执行测试用例,生成缺陷d) 报告阶段:测试报告,改进意见
- opencv保存选择图像中的区域
在自己建立行人检测的图像库时用到,参考别人的修改了一下: #include "opencv2/core/core.hpp" #include "opencv2/highg ...
- 在Eclipse中使用Maven插件 博客分类: Java相关技术
简介 本文介绍如何在Eclipse中通过maven插件编写java项目和web项目. 安装Maven 下载Maven最新版本,见:maven.apache.org/download.html 当前版本 ...