Android笔记--对Activity、View、Window的理解

来源:互联网 发布:淘宝密码找回 编辑:程序博客网 时间:2024/05/26 02:55

对Activity的理解:

1、在一个应用程序中,每一个显示的屏幕就是一个Activity。

2、onCreate(Bundle)接口是初始化Activity的地方。.

3、onPause()接口是使用者准备离开activity的地方。在这儿,任何的修改都应该被提交(通常用于ContentProvider保存数据). 

4、为了能够使用Context.startActivity(),所有的Activity类都应该在AndroidManifest.xml文件中定义有相关的“activity”项。
5、一个Activity可以启动另外一个Activity,包括与它不处于同一应用程序之中的Activity。

6、Android将这两个Activity或者更多的Activity放在同一个任务中来维持一个完整的用户体验。

简单的说,任务就是用户所体验到的“应用程序”。它是安排在一个堆栈中的一组相关的activity。堆栈中的根Activity就是启动了这整个任务的那个。

7、当一个Activity启动另外一个Activity的时候,新的Activity就被压入堆栈,并成为当前运行的Activity。

而前一个Activity仍保持在堆栈之中。当用户按下BACK键的时候,当前Activity出栈,而前一个恢复为当前运行的Activity。

8、在Activity中调用另一个Activity,但若需要在调用另外一个Activity的同时传递数据,那么就需要 利用android.os.Bundle对象封装数据的能力

对View的理解:

1、View 表示屏幕上的一块矩形区域,负责绘制这个区域和事件处理。

在游戏开发中可以自定义视图(View)。自定义的视图可以是复杂的3D实现,也可以是简单的文本形式。

2、每一个View都有一个用于绘图的画布,这个画布可以进行任意扩展。

3、任何一个View类都要重写onDraw()方法来实现画面显示。

4、View类是Android中最基础的类之一,是Android的一个超类。类似Button,RadioButton,CheckBox等等,都是通过继承View的方法来实现的。

可以通过继承View,自定义出有个性的控件出来。

 5、设置焦点:  通过requestFocus 方法可以强制view获得焦点。

对window的理解:

1、window是抽象类,没有继承其他类,它是object的直接子类。
2、window其实是对view的包装,提供更多的特性,比如标题、进度条等,可通过requestFeature(int id)方法进行设置。
3、添加新的window在Activity中,则通过WindowManager来实现,调用addView(View view, LayoutParams lp)方法。

4、 lp是WindowManager.LayoutParams, lp有许多参数可以进行设置,而且都是public来的,主要有x, y, width, height, flags等。
5、ui界面还是通过view来实现的,window只是对其进行了包装作了其他额外的处理。


 
0 0
原创粉丝点击