一:界面UI元素
1:视图组件(View)
基本所有的高级UI组件都继承View类而实现的
2:视图容器组件(Viewgroup)
一个Viewgroup对象就是Android.view.Viewgroup的实例。Viewgroup是View的容器。一个Viewgroup可以加到另外一个Viewgroup中。
3:布局组件Layout
A: LinearLayout 水平或者垂直布局(horizon水平,vertical垂直)、RelativeLayout相对布局
B: FrameLayout 一个FrameLayout对象就好像在屏幕上提前预订好空白区域,然后可以填充一些数据在里面,比如一些图片。
注意:所有元素放在FrameLayout最左上区域,而且无法为这些元素指定一个确切的位置。如果有多个元素,后面的元素会在前面的元素的上面。
C:RelativeLayout 相对布局类。
px:像素;
dip(devices independent pixels):依赖设备的像素;dp等同于dip,dip多用于android/ophone
sp:带比例的像素。主要用于字体显示。与dp类似,但可根据用户字体大小首选项进行缩放。android默认使用sp为字号单位。
pt:点
in(inches):英尺
mm:毫米
建议使用sp作为文字大小的单位,将dip作为其他元素的单位。也可以使用矢量图形,而不是位图。
4:LayoutInflater
LayoutInflater的作用和findViewById()差不多,不同之处在于LayoutInflater是找layout文件夹下的某个xml布局文件,
而 findViewById()是找某一个xml下的具体 widget控件(返回View对象)。
LayoutInflater可以将一个xml布局文件转化为View 类型(返回View对象)
5:布局参数LayoutParams
LayoutParams继承于Android.View.ViewGroup.LayoutParams.
LayoutParams相当于一个Layout的信息包,它封装了Layout的位置、高、宽等信息。假设在屏幕上一块区域是由一个Layout占领 的,如果将一个View添加到一个Layout中,最好告诉Layout用户期望的布局方式,也就是将一个认可的layoutParams传递进去。
可以这样去形容LayoutParams,在象棋的棋盘上,每个棋子都占据一个位置,也就是每个棋子都有一个位置的信息,如这个棋子在4行4列,这里的“4行4列”就是棋子的LayoutParams。
但LayoutParams类也只是简单的描述了宽高,宽和高都可以设置成三种值:
A,一个确定的值;
B,FILL_PARENT,即填满(和父容器一样大小);
C,WRAP_CONTENT,即包裹住组件就好。
二:Dialog
dialog类是一切对话框的基类。需要注意的是,dialog虽然可以在界面上显示,但是并非继承自view类,而是直接从java.lang.Object中开始构造出来。
类似于Activity,Dialog也有自己的生命周期,它的lifecycle由Activity来维护。Activity负责生产,保存,恢复它。在生命周期的每个阶段都有一些回调函数
供系统反向调用。
在Activity中用户主要可以调用的函数:
1:showDialog(int id)——负责显示标识为id的dialog。这个函数如果调用后,系统将反向调用Dialog的回调函数onCreateDialog(int id)
2:dismissDialog(int id)——使标识为id的dialog在界面中消失
AlertDialog与AlertDialog.Builder
AlertDialog是Dialog的一个直接子类,也是最常用的对话框之一。不能通过AlertDialog的构造函数来生成一个AlertDialog。一般生成AlertDialog的时候都是通过它的一个内部静态类AlertDialog.Builder类构造
ProgressDialog:负责显示进度,是AlertDialog的一个子类。可以直接使用构造函数生成
三:Intent
Intent是一次即将操作的抽象描述。分三种:
1:启动一个新的Activity,并可以携带数据
2:通过Intent来启动一个服务(Service)
3:通过一个Intent来广播一个事件
四:Bundle
Bundle是一个类型安全的容器,用来保存Activity的状态。它的实现其实就是对HashMap做了一层封装。但是,对于HashMap来讲,任何名值对都可以存进去,
值可以是任何java对象。而Bundle不是这样。同样存的是名值对,但是这个值只能是基本类型,或者基本类型的数组,如String、int、byte、boolean、char等。
五:Notification和Toast
Toast是一种非常方便的提示框,它在程序界面显示简单的提示信息,用于向用户生成简单的提示信息,它有两个特点:
1:Toast提示信息不会获取焦点
2:Toast提示信息过一段时间会自动消失
调用Toast构造器或者makeText方法创建一个Toast对象
调用Toast的方法来设置该消息提示的对齐方式,页边距,显示内容等。
调用Toast的show()方法将它显示出来
Notification则是显示手机状态栏的消息——手机状态栏位于手机屏幕最上方。那里一般显示手机的网络状态,电池状态,时间等等。
来源:https://www.cnblogs.com/mumue/archive/2012/04/10/2439851.html