Button 响应事件
1.内部类方式(事件单一的情况)
2.接口方式(多种事件)
意图intent用法
显示Intent(this,下一个动作),常用来启动下一个活动
隐式用法
通过设置活动在清单文件中的意图过滤标签来设置相应的动作来触发意图
和 匹配的就会调用
intent也可以传递和接收数据
intent.putextra 传递
startactivityforresult(intent,1)要求下一个活动返回数据并会在onactivityresult()中接收
活动的生命周期
oncreate()
onstart()
onrestart()
onresume()
onpause()
onstop()
ondestory()
销毁活动 finish()
当活动被回收前一定会执行onsaveInstanceState()方法,所以可以用来这个方法来保存活动中的临时信息(比如输入了一段信息切到其他界面再切回来会保存输入的信息)
活动的启动模式
1.standard 不管栈顶还是栈中与该活动都创建实例
2.singletop 只检查栈顶有没有要添加的活动实例,如果不在栈顶也会添加同一个活动的实例
3.sigletask 会检查所以栈中的实例
4.sigleinstance 会新开一个返回栈
活动的封装baseActivity
让每一个活动都继承baseActivity然后让baseActivity再去继承appCompatActivity,这样在base里面就可以getClass().getSimpleName获取当前在哪一个活动中
也可以利用集合容器(例如List)写一个活动的管理器,把所有的活动都放进集合中来管理
活动的最佳启动写法
第一个活动中 要启动的活动类.actionStart(this,数据1,数据2);
在要启动的活动中封装一个启动方法
public static void actionStart(Context,要传的数据1,要传的数据2)
{
Intent intent = new Intent(context, 要启动的活动类);
intent putExtra(“key”,data1);
intent putExtra(“key”,data2);
context.startActivity(intent);
}
活动中添加菜单
1.在资源文件res下新建menu目录,在该目录下新建菜单文件
其中重要的标签
2.在活动中重写oncreateoptionmenu 加载菜单文件
3.添加菜单响应事件重写onOptinsItemSelected
fragment通过代码动态加载过程
1.新建碎片布局和对应的碎片加载该布局的类同时要继承fragment类并在该类中重写oncreateview方法来加载该碎片布局(XXX_fragment.xml 和XXXfragment.class)
2.在要使用的活动中写replaceFragment(碎片实例)方法
3.创建该碎片实例
4.通过getSupportFragmentmanager获取fragmentmanager
5.开启事务来获取一个事务实例
6.事务replace(要替换的布局,fragment)
7.提交事务
注意:在活动的布局中添加fragment标签是静态加入
碎片的生命周期是依附于该碎片所在的活动
listview使用步骤
1.在活动布局中添加注册
2.listview中item的布局和该实体类的实现
3.实体类适配器的实现
继承arrayAdapter,重写getview()方法,通过viewHolde内部类来封装子布局获取布局中所有控件的实例避免多次实例化,通过convertview参数来判断是否加载过布局来避免多次加载布局。