Android 布局开发文档(使用控件及方法)
前言
Android开发中控件的布局是最为基础的部分,对其能够熟悉使用才能更好地进行UI设计。只要你能熟读这篇文章,对Android开发的布局那是完全不在话下。
一、布局控件
1.线性布局(LinearLayout)
控件属性 | 功能描述 |
andriod:orientation=“vertical” | 线性布局垂直显示 |
andriod:orientation=“horizontal” | 线性布局水平显示 |
该布局主要以水平垂直方式来显示界面中的控件。当控件水平排列时,显示顺序依次为从左到右;当控件垂直排列时,显示顺序依次为从上到下。
如果想要实现控件位于线性布局中的居中位置,可以使用android:gravity=“center”,gravity按我的理解就是在线性布局中的相对布局。
2.相对布局(RelativeLayout)
2.1设置控件位置的属性
控件属性 | 功能描述 |
android:layout_centerInParent | 设置当前控件位于父布局的中央位置 |
android:layout_centerVertical | 设置当前控件位于父布局的垂直居中位置 |
android:layout_centerVertical | 设置当前控件位于父布局的水平居中位置 |
android:layout_above | 设置当前控件位于某控件上方 |
android:layout_below | 设置当前控件位于某控件下方 |
android:layout_toLeftOf | 设置当前控件位于某控件左侧 |
android:layout_toRightOf | 设置当前控件位于某控件右侧 |
android:layout_alignParentTop | 设置当前控件是否与父控件顶端对齐 |
android:layout_alignParentLeft | 设置当前控件是否与父控件左对齐 |
android:layout_alignParentRight | 设置当前控件是否与父控件右对齐 |
android:layout_alignParentBottom | 设置当前控件是否与父控件底端对齐 |
android:layout_alignTop | 设置当前控件的上边界与某控件的上边界对齐 |
android:layout_alignBottom | 设置当前控件的下边界与某控件下边界对齐 |
android:layout_alignLeft | 设置当前控件左边界与某控件左边界对齐 |
android:layout_alignRight | 设置当前控件右边界与某控件右边界对齐 |
2.2设置控件间距的属性
控件属性 | 功能描述 |
android:layout_marginTop | 设置当前控件上边界与某控件的距离 |
android:layout_marginBottom | 设置当前控件底边界与某控件的距离 |
android:layout_marginRight | 设置当前控件右边界与某控件的距离 |
android:layout_marginLeft | 设置当前控件左边界与某控件的距离 |
2.3设置布局内边距的属性
布局属性 | 功能描述 |
android:paddingTop | 设置布局顶部内边距的距离 |
android:paddingBottom | 设置布局底部内边距的距离 |
android:paddingLeft | 设置布局左部内边距的距离 |
android:paddingRight | 设置布局右部内边距的距离 |
android:padding | 设置布局四周部内边距的距离 |
3.帧布局(FrameLayout)
布局属性 | 功能描述 |
android:foreground | 设置当前帧布局容器的前景图像(始终在所有子控件之上) |
android:foregroundGravity | 设置前景图像显示位置 |
4.表格布局(TableLayout)
4.1TableLayout布局属性
布局属性 | 功能描述 |
android:stretchColumnds | 设置该列被拉伸,列号从“0”开始。例如,android:stretchColumnds="0"表示第1列拉伸 |
android:shrinkColumnds | 设置该列被拉伸,列号从“1,2”开始。例如,android:shrinkColumnds="0"表示第2、3列可收缩 |
android:collapseColumnds | 设置该列被拉伸,列号从“0”开始。例如,android:collapseColumnds="0"表示第1列隐藏 |
4.2TableLayout控件属性
控件属性 | 功能描述 |
android:layout_column | 设置该单元显示位置,如android:layout_column="1"表示在第2个位置显示 |
android:layout_span | 设置该单元格占据几列,默认为1行 |
5.绝对布局(Absolutelayout)
布局属性 | 功能描述 |
android:layout_x | 设置X坐标 |
android:layout_y | 设置Y坐标 |
二、常用控件
1、TextView
控件属性 | 功能描述 |
android:layout_width | 设置TextView控件的宽度 |
android:layout_height | 设置TextView控件的高度 |
android:text | 设置显示文本 |
android:textColor | 设置文本颜色 |
android:textSize | 设置文字大小,推荐单位:sp |
android:textStyle | 设置文字样式,如bold(粗体),italic(斜体),bolditalic(粗斜体) |
android:maxLength | 设置文本长度,超出不显示 |
android:password | 设置文本以密码形式“·”显示 |
android:gravity | 设置文本位置,如center(文本居中) |
android:phoneNumber | 设置以电话号码的方式输入 |
android:height | 设置文本区域的高度,支持单位:px/dp(推荐)/sp/in/mm |
android:width | 设置文本区域的宽度,支持单位:px/dp(推荐)/sp/in/mm |
layout_width 和 layout_height 中的属性:
match_parent :填充父窗体由父容器大小决定控件大小,简单来说就是外层容器中留了多少空,只要能填上部分就都填上
wrap_content :会根据控件的内容大小自动伸缩,也就是受到TextView中设置文字的大小的影响,假如说TextView中设置android:layout_height=“wrap_content”,那么控件高度就和文字高度基本一致
2、EditText
控件属性 | 功能描述 |
android:hint | 显示EdiText没有输入内容时显示的提示文本 |
android:lines | 设置固定行数来决定EditText的高度 |
android:maxLines | 设置最大行数 |
android:minLines | 设置最小行数 |
android:scrollHorizontally | 设置超出超出TextView的宽度的情况下,是否出现横拉条 |
android:capitalize | 设置首字母大写 |
android:editable | 设置是否可以编辑 |
其他属性与TextView控件属性基本一致
还有很多属性文中没有例举,但能够掌握以上内容对Android的基础开发是完全没问题的。