一、活动中使用Menu
1、新建menu文件夹,在其中新建Menu resource file,这是一个xml类型的文件,并在里面添加字段,每一个item标签是一个菜单项,其中,title为必须项
2、在Activity中重写onCreateOptionsMenu(),如下
@Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main,menu); return true; }3、重写 onOptionsItemSelected(MenuItem item)这个方法来实现监听逻辑二、隐式Intent
1、在AndroidManifest.xml的activity标签一般都有过滤器,过滤器有三种,action,cetegory和data。其中cetegory默认是default类型,只有代码中的这三个类型与清单文件中这三个类型能够同时匹配时,该活动才能响应这个隐式intent。
2、action只能指定一个,cetegory却可以指定多个,在代码中可以通过intent.addCetegory()来动态添加cetegory 3、相对于清单文件来说,要想成功响应某隐式intent,“大项必须完全相同,小项可多不可少”,且cetegory的defaul类型t就像无参构造器,仅自己时可不写,若多了则必须写4、隐式intent不仅可以匹配本程序的acticity,还可匹配其他app的活动。
5、代码中可以使用setdata()方法设置data,方法内接受uri参数,用于指定现在正在操作的数据,清单文件中的data标签内容与intent中所携带的data相同,才可匹配
6、Action_View 隐式网页,Action_Dail 隐式电话联系人
三、返回数据给上一活动
1、在第一个活动中
startActivityForResult(intent,request)
重写onActivityResult方法
2、在第二个活动中
setResult(RESULT_OK,intent)
四、琐碎知识
1、重写onBackPRessed可以重写返回键功能,就好像onkeydown那样
2、重写onSavaInstanceState()可保存数据防止被杀掉,获取的话要在oncreate里边用那个bundle参数进行获取,获取与存储方式为键值对
3、getTask()可以获得当前栈id
4、getclass().getSimpleName()可获得当前活动名
5、为保证程序完全退出,可以使用杀死进程的代码android.os.Process.killProcess(android.os.Process.myPid());杀死当前进程
6、活动生命周期中onRestart之后是onStart而不是onResurme
新闻热点
疑难解答