Activity高级特性总结

1.Activity的理解

            1.活动:四大应用组件之一

                2. 作用:提供能让用户操作并与之交互的界面

              3. 组件的特点:

                           它的类必须实现特定的接口或继承特定的类,需要在配置文件中配置全类名

            它的对象不是通过new来创建的,而是系统自动创建的 ,它的对象具有一定的生命周期,它的类中有对应的生命周期回调方法

          4. 那些地方用到反射技术:(Android)

                         1.配置文件中配置全类名

                           2.布局文件定义标签

                         3.显示意图:Intent(Context context, Class c)//反射源头

2.Intent的理解

     1.  意图,信使(Activtiy,Service,BroadcastRecevier三个组件间通信的信使)

       2.分类:

            显式:操作当前应用自己的组件

            隐式:操作其他应用组件

3.Intent的使用

     1.创建

                显式:Intent(Contex context , Class activityClass)

                 隐式:Intent(String action) //与Activtiy与<intent -filter>的action匹配

      2. 携带数据

                  额外:putExtra(String key, Xxx value)内部用map 容器保存

               有特点前缀:setData(Uri data) //tel :123123,smsto:123123

          读取数据:

                 额外:Xxx getXxxExtra(String key)

              有特定前缀:Uri getData()

4.Activity 的使用

   1.定义

                    1.定义一个类 extends Activity 并重写生命周期方法

                     2. 在功能清单文件中使用<activity>注册

 2.启动

   一般启动:startActivity(Intent intent)

  带回调启动:startActivityForResult(Intent intent,int requestCode)

           重写: onActivityResult(int requestCode,int resultCode, Intent data)

   3.结束

              一般:finish()

               带结果:setResult(int resultCode,Intent data)

5.Activity生命周期

 1. Activity界面的状态

 运行状态:可见可操作

暂停状态: 可见不可操作

停止状态:不可见,但对象存在

死亡状态:对象不存在

2.Activity的生命周期流程


  

onCreate():加载布局和初始化的工作

onResume(): 只有经历此方法,才能进入运行状态

onDestroy(): 在对象死亡之前,做一些收尾或清理工作

6.TaskStack和LauchMode

1.TaskStack

     在Android中,系统用Task Stack(Back Stack)结构来存储管理启动的Activity对象

  一个应用启动,系统就会创建一个对应的Task Stack来存储并管理应用的Activity对象

只有最上面的任务栈的栈顶的Activity才能显示在窗口中

2. lauchMode

standard:

标准模式,每次调用SrtartActivity方法就会产生一个新的实例

singleTop

如果已经有一个实例位于Activity栈的顶部,就不会产生新的实例,如果不存在就会创建一个新的实例


singleTask

只有一个实例,默认在当前的Task中

singleInstance

          只有一个实例,创建时会新建一个栈,并且栈中不能有其他对象

7.设置监听的四种方式

1.layout中:android:onClick="方法名"

        Activity中:public void 方法名(View V){ }

  2.view.setOnClickListener(new View.OnClickListence(){})   

3.view.setOnclickListenter(this)

4.view.setOnclickLListenter(onclicklistenter 成员变量)


 

猜你喜欢

转载自blog.csdn.net/Summerkang/article/details/80207688