当前位置:文档之家› Android 的界面布局及基本控件

Android 的界面布局及基本控件

每个布局文件包括了一个树状元素集合,代表了窗口 控件和容器之间的关系,每个XML元素都有一些属性,用 于描述窗口控件的特性,如颜色、背景等。
使用XML资源文件创建布局
流式布局元素标签
用于指定流式布局的方向:分 别为vertical和horizontal
用于指定元素的水平宽度,有 三种取值:fill_parent表示当前
View是Android控件的一个基类,一个View就是屏幕上的一个矩形区域, 主要负责绘制元素和事件处理。View提供了许多用于界面显示的子类,例 如按钮类Button、文本显示区域TextView类、EditText类等 。我们往往利用 View类的这些子类去绘制界面元素。View类的详细说明如下图所示:
流式布局LinearLayout
LinearLayout是线性布局控件,它包含的子控件将以横向或竖 向的方式排列,按照相对位置来排列所有的组件或者其他的容器, 超过边界时,某些组件将缺失或消失。因此一个垂直列表的每一 行只会有一个组件或者是容器,而不管他们有多宽,而一个水平 列表将会只有一个行高(高度为最高子控件的高度加上边框高 度)。 LinearLayout有两个重要的属性:
帧式布局FrameLayout
帧式布局FrameLayout:在Android的五大布局中是最简 单的布局方式,在需要布局中的控件有重叠的情况下才使 用。 在它上面可以添加多个组件,所有组件都被固定在 界面的左上角,叠加显示,后一个组件会在前一个组件之 上显示 ,也就是说后一个组件会全部或部分的覆盖前一 个组件。
该属性用于指定R.java中的某 个特定资源ID
该属性用于指定元素内文字的大小
View及ViewGroup简介
我们知道Activity是Android应用程序基本的功能单元,Android的每一个 窗口都是一个Activity。但是Activity并不能真正的显示出来,我们要显示界 面信息,需要在Activity中通过调用方法setContentView(View view)来实现, 也就是说真正显示出来的是View。
View及ViewGroup简介
ViewGroup是View的子类,它并不会直接显示出来,而是负责管理和容 纳下一层的View和ViewGroup,即它是容纳其他元素的容器。在ViewGroup 中定义了嵌套类youtParams,这个类定义了显示对象时的属性, View通过LayoutParams告诉父窗体它的摆放位置。ViewGroup是一个抽象类, 所以真正充当窗口角色的是它的子类们,例如LinearLayout流式布局、 RelativeLayout相对布局、TableLayout表格布局等这些布局管理 器,ViewGroup类的详细说明如下:
注意:FrameLayout中的控件layout_margin设置要依赖 layout_gravity属性,否则layout_margin设置无效。 layout_gravity有好几个值可以设置,具体要设置哪一个呢? 其实layout_gravity可以理解为设置控件的参考点,控件最 终显示位置最终由layout_gravity和layout_margin共同决定。 如果想要控件正常显示,可以将控件的layout_gravity设置 为top,以屏幕左上角为参考点。
ANDROID 的界面布局的UI布局 ➢View和ViewGroup简介 ➢Android界面布局 ➢帧式布局FrameLayout ➢线性布局LinearLayout ➢文本显示控件:TextView ➢输入文本框:EditText ➢按钮:Button ➢应用实例:简单的拨号程序界面
元素宽度由父元素的宽度决定,
即会填充父元素。该值由 Android2.2 开始由 match_parent取代。 wrap_content:表示当前元素的 宽度由元素本身的内容决定
该属性用于指定元素的垂直高度,取值 和Android:layout_width取值相同
该属性用于指定元素上要显示的信息
该属性用于指定元素内容为空时的显示 文本
本章小结
➢视图View概述 ➢Android界面布局 ➢帧式布局:FrameLayout ➢线性布局LinearLayout ➢文本显示控件:TextView ➢输入文本框:EditText ➢按钮:Button ➢应用实例:简单计算器
➢android:orientation:该属性设置该布局的线性方向(横向 horizontal/竖向vertical)。
➢android:layout_weight:设置控件占屏幕的比例,在垂直布局时, 代表行距;水平布局时代表列宽,weight值越大就表示所占比例 越大。
➢Android:background:该属性用于设置元素的背景颜色,其中颜 色值前两位表示透明度,“00”为透明,“ff”表示不透明
➢android:orientation:该属性设置该布局的线性方向(横向 horizontal/竖向vertical)。
➢android:layout_weight:设置控件占屏幕的比例,在垂直布局时, 代表行距;水平布局时代表列宽,weight值越大就表示所占比例 越大。
➢Android:background:该属性用于设置元素的背景颜色,其中颜 色值前两位表示透明度,“00”为透明,“ff”表示不透明
帧式布局FrameLayout实例
帧式布局FrameLayout运行效果
android:gravity:属性是对该view中内容的限定.比如一个button 上面的text. 你可以设置该text 相对于view的靠左,靠右等位置. android:layout_gravity:是用来设置该view相对与父view 的位 置.比如一个button 在linearlayout里,你想把该button放在 linearlayout里靠左、靠右等位置就可以通过该属性设置. android:layout_marginLeft:是设置整个布局离左边的距离
Android的UI布局
Android的UI布局可以通过两种方式来实现:
➢通过代码实现用户界面布局:这种方式类似于Java中的 Swing组件布局,实现起来相当复杂。
➢通过XML资源文件创建布局:这种类似我们通过HTML 设计页面,实现起来比较简单
通过XML文件我们可以定义窗口控件之间的关系,以 及窗口控件(Widget)和容器之间的关系,Android系统 把布局文件作为一种资源,存储在项目的res/layout目录 下。
流式布局LinearLayout案例
流式布局LinearLayout
LinearLayout是线性布局控件,它包含的子控件将以横向或竖 向的方式排列,按照相对位置来排列所有的组件或者其他的容器, 超过边界时,某些组件将缺失或消失。因此一个垂直列表的每一 行只会有一个组件或者是容器,而不管他们有多宽,而一个水平 列表将会只有一个行高(高度为最高子控件的高度加上边框高 度)。 LinearLayout有两个重要的属性:
相关主题