android四大组件之-Activity笔记

一 : 常用API

1 生命周期回调
onCreate()              当Activity被创建的时候调用
onStart()               当Activity界面可见的时候调用
onResume()              获取焦点
onPause()               失去焦点
onStop()                当Activity界面不可见的时候调用
onDestroy()             当Activity被销毁的时候调用
onRestart()             当Activity重启
2 其他的回调
onCreateOptionsMenu()   创建一个选择项的菜单(可以做自定义菜单的界面)
onOptionsItemSelected() 当点击菜单的界面时候调用//(根据 item.getItemId()可以做点击菜单条目的逻辑)
onBackPressed()         当按返回键时调用
onActivityResult()      当界面关闭的时候调用
onTouchEvent()          调用触屏事件
onClick()               用户点击时调用
onKetDown()             判断当前按下的键是什么类型(返回true才会处理当前事件)[类型的int值,触摸事件对象]
onSaveInstanceState()   保存Activity的状态(方法接受一个Bundle 类型的参数, 开发者可以将状态数据存储到这个Bundle 对象中, 这样即使activity 被系统摧毁, 当用户重新启动这个activity 而调用它的onCreate()方法时, 上述的Bundle对象会作为实参传递给onCreate()方法, 开发者可以从Bundle对象中取出保存的数据, 然后利用这些数据将activity 恢复到被摧毁之前的状态。)
onNewIntent(Intent)     启动模式设置为“singleTop”的Activity再次启动的回调
3 其他
setContentView()        关联布局文件(希望显示出的界面)
getAssets().open("address.db");     得到assets资产目录的输入流
setResult()             把当前界面的数据返回给开启我的界面
getResources()          得到资源目录
getFileDir()            当前包files目录的绝对路径
getCacheDir()           当前包Cache目录的绝对路径(存储缓冲文件的)
getSharedPreferences()  得到一个Map集合IO流对象
getIntent()             得到调用这个界面的意图对象
getSupportActionBar()   获取ActionBar对象
startActivity()         启动Activity意图;
startActivityForResult()启动Activity意图(为了返回值)
startService()          开始服务意图
stopService()           销毁服务意图
finish()                关闭当前界面
findViewById()          关联控件
sendBroadcast()         发送广播
getMenuInflater()       创建一个菜单
setArguments()          存储一个Bandle对象
getPackageManager()     得到包的管理对象
getPackageName()        得到包名
runOnUiThread           简单的在子线程更新ui--->runOnUiThread(new Runnable() {run方法里面就可以更新ui}
requestWindowFeature()  设置标题栏[Window.FEATURE_NO_TITLE(没有标题栏)]
overridePendingTransition();        设置退出或者进入的动画[R.anim.abc_popup_enter, R.anim.abc_popup_exit]

二 : 在androidManifest的设置

  • 注意:每个activity都要在androidManifest里面配置清单
  • android:configChanges——–配置发生改变的设置那些不影响Activity的生命周期的(详细信息)
  • android:screenOrientation—-屏幕方向(详细信息)
例如:
<activity   android:name="包类路径"                                 //包类路径
            android:label="标题的名称"                               //标题的名称                             
            android:theme="主题的样式"                               //主题的样式
            android:configChanges="配置发生改变的设置";                //配置发生改变的设置那些不影响Activity的生命周期
            android:screenOrientation="屏幕的方向"                   //指定什么方向”landscape”(横屏,portrait是竖屏)
            android:icon="图标的地址"                                 //图标的地址
            android:launchMode="启动模式"                           //启动模式  
            >                           
    <intent-filter>                                                 //意图过滤器(匹配规则)
            <action android:name="动作名称"/>                       //这个随便指定
            <category android:name="android.intent.category.种类"/> //DEFAULT(默认)
            <data android:属性="属性名称"/>                           //数据:scheme(数据前缀), host(主机名) ,mimeType(数据的格式)     
    </intent-filter>    
</activity> 

三 : 启动模式

  • (1)standard:每次激活Activity时(startActivity),都创建Activity实例,并放入任务栈;

  • (2)singleTop:如果某个Activity自己激活自己,即任务栈栈顶就是该Activity,则不需要创建,其余情况都要创建Activity实例;

  • (3)singleTask:如果要激活的那个Activity在任务栈中存在该实例,则不需要创建,只需要把此Activity放入栈顶,并把该Activity以上的Activity实例都pop;

  • (4)singleInstance:会单独创建一个Activity栈;

1 Activity启动模式对Activity行为的影响

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值