01安卓基础之四大组件一:activity

来源:互联网 发布:matlab稀疏矩阵求解 编辑:程序博客网 时间:2024/06/05 17:35

IDE:adt-eclipse

四大组件:Activity、BroadcastReceiver、Service、ContentProvider

1、打开新的activity

1.1创建:

1.1.1 写一个类继承Activity
1.1.2 写这个类中的onCreate方法, 在onCreate方法中做初始化的操作:加载布局等。
1.1.3在清单文件AndroidManifest.xml中声明为对应的activity节点,在Activity节点下可以声明一个intent-filter意图过滤器。
注意事项:①如果这个intent-filter 配置成下面的内容 这个activity就会作为应用的启动activity 并且在桌面上产生一个图标,一个应用只能有一个activity配置这个intent-filter
② 在Activity节点下 可以声明 icon label属性,即应用的桌面图标和应用名称。如果这个activity是启动的activity 这个icon 和label就会显示到桌面上 如果没有声明默认使用application节点下的对应属性
<span style="white-space:pre"></span><activity            android:name="com.itheima.createnewactivity.MainActivity"            android:icon="@drawable/head1"            android:label="第一个activity" >            <intent-filter>                <action android:name="android.intent.action.MAIN" />                <category android:name="android.intent.category.LAUNCHER" />            </intent-filter>        </activity>        <activity            android:name="com.itheima.createnewactivity.SecondActivity"            android:icon="@drawable/head2"            android:label="第二个activity" >        </activity>

1.2 打开

1.2.1 隐式意图 :通过指定一组动作或者数据 开启activity
1.2.2 显式意图 :通过指定具体包名和类名 开启activity

2、Activity 生命周期

查看官方文档:
2.1 An activity has essentially four states:
①处于前台的activity  可见的 并且可以跟用户进行交互
②处于暂停状态  可见 但不能被操作
③停止状态  不可见 也不可以被操作
④ 销毁状态  activity被系统杀死或者调用finish方法主动退出
2.2 执行方法:
onCreate():当activity创建的时候会走这个方法
onstart ():走完这个方法activity就可以被用户看到
onResume (): 走完这个方法activity就处于一个前台activity的状态(可见并且可以被操作)
onPause() : 走完这个方法activity就处于暂停状态(可见但不可以被操作)
onStop() : 走完这个方法activity就处于停止状态(不可见不可以被操作) 
onDestory(): 走完这个方法 activity就销毁了 

从停止状态(onStop执行之后)回到前台  :onrestart() -->onstart()-->onresume()

onresume()加载数据 恢复播放的状态
onstop 可以在这个方法中停止所有关于刷新界面的操作 
ondestory 释放资源的操作都放在这个方法中

横竖屏幕切换 : ondestory()-->onrestart() -->onstart()-->onresume()
一些应用为防止横竖屏切换销毁进程,一般会作如下处理:
(1)为了防止横竖屏切换 生命周期会发生变化 所以把Activity配置如下 
  android:screenOrientation="portrait"
  (2)为了声明周期不变化 
  android:configChanges="orientation|keyboardHidden|screenSize" 



3、案例


0 0
原创粉丝点击