Android基础-5

来源:互联网 发布:java观察者模式应用 编辑:程序博客网 时间:2024/05/01 18:40

FrameLayout没有位置概念。好处在于,运行效率高。

LinearLayout,子元素一个个接一个排布。水平排布和垂直排布。

RelativeLayOut,相对布局,子元素相对于其他子元素排布。

TableLayOut,是水平方向和垂直方向的LinearLayOut的混合。

使用可视化编辑工具不具有很好的屏幕适配性,编写复杂的页面时候,使用可视化的编辑工具也难以胜任。

1TextView:用于在界面上显示一段文本信息。

Android:layout_width,_height用于指定空间的宽度和高度。安卓中所有的控件都有这两个属性。可选有match_parent,fill_parent和wrap_content.其中前两者意义相同,官方更加推荐match_parent,match_parent表示当前空间的大小和父布局的大小一样,也就是父布局来控制当前控件的大小。Wrap_parent表示当前控件的大小刚好包含里面的内容,由空间的内容决定控件的大小。也可以对于控件的高宽指定固定的大小,但是可能在不同手机的适配出现问题。

Android:gravity用来指定文字的对齐方式。指定“center”,效果相当于”center_vertical|center_horizontal”,表示文字在垂直和水平方向都居中对齐。

Android:textSize,android:textColor用于指定文字的大小和颜色。

2Button:按钮。

3EditText:允许用户在控件中编辑内容,并可以在程序中对这些内容进行处理。发短信发微博。一些附加的字段设置:提示性文字,当输入的文字多的时候,如果设置的是wrap_content,它总能包含很多内容,无限拉长,设置最大的行,当输入的内容超过两行,文笔自动上滚。

4ImageView:用于在界面展示图片的控件。

5ProgressBar:用于在界面上显示一个进度条。

所有的安卓的组件都有一个设置可见的属性。Android:visibility,可选的值有visible,invisible,gone.visible表示控件可见,invisible表示控件不可见,但是还是占据原来的位置和大小,可以理解为控件变为透明状态。Gone不仅不可见也不占据任何屏幕空间。我们也可以用代码来控制控件的可见性,使用setVisibility方法,可以传入View.VISIBLE,View.INVISIBLE和View.GONE三个值。

6AlterDialog可以在当前页面弹出一个对话框,屏蔽与其他控件进行交互的能力。使用alterDialog一般是用于提示非常重要的内容和警告信息。比如在删除前弹出一个确认的按钮。

7ProgressDialog可以在界面中跳出一个对话框,屏蔽与其他控件的交互能力,不同的是progressdialog在对话框中显示一个进度条。

布局:

一个丰富的页面总是由很多的控件组成,布局让组件有条不紊的放置在界面上。布局是一种可以放置很多控件的容器。它可以按照一定的规律调整内部控件的位置。布局的内容除了可以放置布局外还可以放置控件。多层布局的嵌套。

LinearLayout线性布局:把所有的控件在线性方向上依次排列。通过android:orientation,如果属性为vertical为垂直方向排布,如果是horizontal就是水平方向排布。

RelativeLayout相对布局:通过相对定位的方式让控件出现在布局的任何位置。可以相对于父布局进行定位,也可以相对于控件定位。

FrameLayout所有的控件全部放在左上角。

TableLayout以表格的方式来排列控件。合并单元格。

创建自定义控件:

所有的控件都是直接或者间接的继承与于view,所有的布局都是直接或者间接继承viewGroup。View是安卓中最基本的ui组件,可以在屏幕中绘制一块矩形区域并且相应矩形区域的事件。我们使用的各种组件实际上就是在view的基础上添加各自的功能。Viewgroup是特殊的view,可以包含很多viewGroup,view,用于放置控件和布局的容器。

如果系统自带的控件不能满足需求的,我们可以通过上面的继承结构,创建自己的控件。

ListView当程序中有大量数据显示的时候需要使用到ListView,允许用户通过手指上下滑动的形式将屏幕外的数据拖动到屏幕中,也可以把屏幕中的数据拖动出去。

单位和尺寸:

Px像素,屏幕中的可以显示的最小的元素单元。

Pt磅数,一磅等于72分之一英寸,用pt表示字体的单位。

用以上的单位,容易出现的问题是,在不同分辨率的屏幕上显示的效果完全不同。

Dp,dip,密度无关像素,在不同的密度屏幕下显示保持一样。

Sp可伸缩像素,解决文字大小适配问题。

安卓中的密度:屏幕每英寸所包含的像素数。Dpi为单位。密度越高显示效果就越精细。如果手机屏幕宽2英寸长3英寸,分辨率320*480,那么160dpi。

安卓规定,在160dpi上,1dp=1px.在320上,1dp=2x。


0 0