Android_Activity知识点
一:安卓的目录下面有两个文件夹,一个是assets一个是RES其中在resw文件夹放的所有东西都会在R文件夹中自动对应的生成了一个ID,那么在assets中我们可以放关于这个工程的任何文件。
二:drawable-hdpi、drawable-ldpi、drawable-mdpi、drawable-xhdpi、drawable-xxhdpi,放的都是图片文件,每个文件夹得图片都有不一样的分辨率但是切记图片的内容和名字全都是一样的,主要是应对每个手机的系统版本一样但是手机屏幕的分辨率不一样。
三、layout放的是布局文件,每个Activity都对应着一个layout布局文件(xml),主要做控件的摆放。在values中的string.xml中的键值对都会在R文件中对应生成了一个Id。
四、AndroidManifest.xml整个程序的配置文件,
Activity讲解:
一:作用:Activity是可见的,控件的容器,intent作用的是数据的传递。
二:多个Activity之间的关系(就像多个页面),跳转要调用startActivity方法,
Intent的基本作用:
Intent(请求)
1.Component name (启动Intent的时候要求调用哪个Activity的名字)
2.Action (指定另外跳转的Activity的动作,指定他要做什么,)
3.Data (我从一个Activity中向另一个Activity周保珪传递的的数据)
4.Category
5.Extras (键值对,早Activity中存放的键值对在另外一个Activity中可以取出来)
6.Flags
-------------------------------------------------------------------
Activity的生命周期一
* 生命周期的方法都是安卓的操作系统调用的(non-Javadoc)
* onCreate方法:当A第一次被创建的时候会调用,在里面我们设置布局文件、对按钮绑定一些监听器
* onStart方法:能被用户看到的时候会调用这个方法
* onResume方法:当我们A得到用户焦点的时候会调用这个方法
* onPause方法:当启动另外一个Activity的时候会调用这个方法,使之第一个Avt暂停了,并且第二个AVT会覆盖第一个
* onStop方法:当程序第二个AVT会覆盖第一个终止的时候调用第一个开始的onStop方法。
Activity的生命周期二
Task(任务)基本概念:
就是一个栈(后进先出),在里面放了好对Activity
Task运行过程:
1:当一个Act运行的时候该Avt对象呗压入stack(栈)中(手机屏幕上永远都是显示栈的顶部的Act);
2:当点击第二个ACt的时候原理如第一个一样第二个被覆盖第三个ACT就出来了,手机显示的是第三个ACT,
注意:
(其他的Act并没有被销毁,还存在栈里中,当点击手机返回的按钮的时候 会用栈的特性后进先出然后按照这个特性显示。
当我们在点击事件中加入了finish();那么当前被加入的Act就会被销毁
其中在栈中的Act的位置是不可变的。
)
3:窗口化显示Activity需要在AndroidManifest.xml配置文件中申明要显示的Act的这个属性android:theme="@android:style/Theme.Dialog"
要点来了(
onPause方法:当启动另外一个Activity的时候会调用这个方法,使之第一个Avt暂停了,并且第二个AVT会覆盖第一个(
但是这个第二个是窗口化的并没有完全覆盖第一个Act,那我们就不会调用第一个Act的onStop方法。
如果一个Act调用了onStop、onPause、onDestroy会被安卓的本息系统所杀掉
)
)
最新文章
- 你的眼睛背叛你的心:解决 .NET Core 中 GetHostAddressesAsync 引起的 EnyimMemcached 死锁问题
- 线程.FTP.SFTP.打包
- AngularJS 模块
- 详解javascript,ES5标准中新增的几种高效Object操作方法
- 重放攻击(Replay Attacks)
- (DFS)hdoj1241-Oil Deposit
- How Tomcat Works(十八)
- C++调用C#库简单例程
- Makefile 入门与基本语法 分类: C/C++ ubuntu 2015-05-18 11:16 466人阅读 评论(0) 收藏
- silverlight visifire控件图表制作——silverlight 后台方法打印
- 重操JS旧业第七弹:面向对象与对象创建
- Python学习笔记12:标准库之对象序列化(pickle包,cPickle包)
- 网络请求 ---iOS
- 数据结构-二叉树(应用篇)-之二叉搜索树 C和C++的实现
- ●BZOJ 1855 [Scoi2010]股票交易
- centOS 及 ubuntu 下载地址记录
- Mysql partition by
- 如何在framegroup各个frame和window之间共享数据
- transform.forward和vector3.forward
- 推荐:Asp.Net MVC 多语言(html+js共用一套资源文件)
热门文章
- python spyder 今天突然打不开了【已解决】
- RadioGroup多行显示
- 【我要学python】open函数的简单用法
- mtk预装apk 方案公司内置预装apk
- eclipse汉化 adt汉化
- [NOI 2011][BZOJ 2434] 阿狸的打字机
- 【DFS】Paintball(6-22)
- 【模拟】Gym - 101190A - Abbreviation
- git 推送内容到远程新分支
- [转]提示错误 package javax.servlet.jsp does not exist package javax.servletr.jsp.tagext does not exist