Activity-编写Activity
2015-05-31 08:09
267 查看
Android-编写Activity
一 创建新的Activity
1 创建Activity及相关视图文件Layout(View)
2 配置Androidmanifest.xml
3 重载onCreate(), 绑定Activity和layout(view)
setContentView工作机制:
Activity里面的setContentView调用->framework层中window这个抽象类的子类phonewindow中的setContentView去初始化xml界面元素
程序界面加载的方式:
方式一:压力泵inflater():
下面的两句代码功能相同
setContentView(R.layout.layout_activity1);
this.getWindow().setContentView(this.getLayoutInflater().inflate(R.layout.layout_activity1, null));
方式二:addView()->view()
4 为View(Layout)添加必要的组件
如何动态编码来控制界面:
建立界面控件树的概念,控件树层层嵌套的树状结构。
例如button是嵌套在linearlayout中的
常用到的方法是findViewById()根据R类中的id找到资源
5 在onCreat()中实现初始化业务逻辑
加入事件处理:
setOnClickListener,需要用到java匿名内部类
事件机制的要素:
事件的主体即发生的对象
事件的监听函数设置
事件的逻辑代码
二 Activity之间的切换以及传值
1 主Activity1与子Activity2之间切换
与正常的Activity间切换
Activity1:构建intent对象, 然后设置属性, 在startActivity;
Activity2:构建intent对象接收Activity1发送的intent对象,之后进行业务逻辑
与条件不完整的Activity间切换
在manifest文件中注册的新的Activity2的属性不完整,例如没有名字等,也可以指定系统自带的Activity,比如拨号界面
2 主Activity1与子Activity2之间传值
主Activity1传入值, Activity2接收值
Activity1:构建intent对象, 然后设置属性,含有某些值, 在startActivity;
Activity2:构建intent对象接收Activity1发送的intent对象,之后进行业务逻辑,接收值等
主Activity1接收Activity2的返回值
Activity1:构建intent对象, 然后设置属性,含有某些值, 在startActivityForResult;
Activity2:构建intent对象接收Activity1发送的intent对象,之后进行业务逻辑,接收值,返回值setResult等,最后finish()关闭这个Activity2
Activity1:重写onActivityResult函数用来接受值
一 创建新的Activity
1 创建Activity及相关视图文件Layout(View)
2 配置Androidmanifest.xml
3 重载onCreate(), 绑定Activity和layout(view)
setContentView工作机制:
Activity里面的setContentView调用->framework层中window这个抽象类的子类phonewindow中的setContentView去初始化xml界面元素
程序界面加载的方式:
方式一:压力泵inflater():
下面的两句代码功能相同
setContentView(R.layout.layout_activity1);
this.getWindow().setContentView(this.getLayoutInflater().inflate(R.layout.layout_activity1, null));
方式二:addView()->view()
4 为View(Layout)添加必要的组件
如何动态编码来控制界面:
建立界面控件树的概念,控件树层层嵌套的树状结构。
例如button是嵌套在linearlayout中的
常用到的方法是findViewById()根据R类中的id找到资源
5 在onCreat()中实现初始化业务逻辑
加入事件处理:
setOnClickListener,需要用到java匿名内部类
事件机制的要素:
事件的主体即发生的对象
事件的监听函数设置
事件的逻辑代码
二 Activity之间的切换以及传值
1 主Activity1与子Activity2之间切换
与正常的Activity间切换
Activity1:构建intent对象, 然后设置属性, 在startActivity;
Activity2:构建intent对象接收Activity1发送的intent对象,之后进行业务逻辑
与条件不完整的Activity间切换
在manifest文件中注册的新的Activity2的属性不完整,例如没有名字等,也可以指定系统自带的Activity,比如拨号界面
2 主Activity1与子Activity2之间传值
主Activity1传入值, Activity2接收值
Activity1:构建intent对象, 然后设置属性,含有某些值, 在startActivity;
Activity2:构建intent对象接收Activity1发送的intent对象,之后进行业务逻辑,接收值等
主Activity1接收Activity2的返回值
Activity1:构建intent对象, 然后设置属性,含有某些值, 在startActivityForResult;
Activity2:构建intent对象接收Activity1发送的intent对象,之后进行业务逻辑,接收值,返回值setResult等,最后finish()关闭这个Activity2
Activity1:重写onActivityResult函数用来接受值
相关文章推荐
- Valid Parentheses
- 1到64进制的转换
- Windows下修复mbr
- Android-Activity启动过程
- JAVA反射机制
- 最优调度(贪心)问题
- Linux字符驱动中动态分配设备号与动态生成设备节点
- 实验室设备管理 系统
- 区间查询问题
- ubuntu sudo 和su的区别
- Swift学习笔记-判断字符出现的次数
- 深入探讨 Java 类加载器
- eclipse开发php全过程的搭建带debug的配置
- 长度为n的数组求其中有几个长度为k的区间数字是连续的(无重复)
- Spring AOP 深入剖析
- OSChina 周日乱弹 —— 正确的撸串方式
- 第十三周项目一 动物怎么叫(抽象类)
- Foreign LINUX让你在Windows上运行Linux应用
- JSplitPane demo
- 3.SRS文档