1.线性布局(LinearLayout)
线性布局的形式可以分为两种,第一种横向线性布局 第二种纵向线性布局,总而言之都是以线性的形式 一个个排列出来的,纯线性布局的缺点是很不方便修改控件的显示位置,所以开发中经常会以线性布局与相对布局嵌套的形式设置布局。
(里边只能有一个控件还不能设计控件的位置,挺无奈,控件会放到左上角,线型布局分为程度线性和垂直线性,二者的属性分别为:android:orientation="horizontal" android:orientation="vertical".)
线性布局的形式可以分为两种,第一种横向线性布局 第二种纵向线性布局,总而言之都是以线性的形式 一个个排列出来的,纯线性布局的缺点是很不方便修改控件的显示位置,所以开发中经常会以线性布局与相对布局嵌套的形式设置布局。
(里边只能有一个控件还不能设计控件的位置,挺无奈,控件会放到左上角,线型布局分为程度线性和垂直线性,二者的属性分别为:android:orientation="horizontal" android:orientation="vertical".)
2.相对布局(RelativeLayout)
相对布局是android布局中最为强大的,首先它可以设置的属性是最多了,其次它可以做的事情也是最多的。android手机屏幕的分辨率五花八门所以为了考虑屏幕自适应的情况所以在开发中建议大家都去使用相对布局 它的坐标取值范围都是相对的所以使用它来做自适应屏幕是正确的。
(里面可以放多个控件,只是一行只能放一个控件,下边是几种 RelativeLayout 的属性
第一类 : 属性值为 true 或 false
android:layout_centerHrizontal 程度居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent 相对于父元素完全居中
android:layout_alignParentBottom 贴紧父元素的下边沿
android:layout_alignParentLeft 贴紧父元素的左边沿
android:layout_alignParentRight 贴紧父元素的右边沿
android:layout_alignParentTop 贴紧父元素的上边沿
android:layout_alignWithParentIfMissing 若找不到兄弟元素以父元素做参照物
第二类:属性值必须为 id 的引用名“ @id/id-name ”
android:layout_below 在某元素的下方
android:layout_above 在某元素的上方
android:layout_toLeftOf 在某元素的左边
android:layout_toRightOf 在某元素的右边
android:layout_alignTop 本元素的上边沿和某元素的的上边沿对齐
android:layout_alignLeft 本元素的左边沿和某元素的的左边沿对齐
android:layout_alignBottom 本元素的下边沿和某元素的的下边沿对齐
android:layout_alignRight 本元素的右边沿和某元素的的右边沿对齐
第三类:属性值为具体的像素值,如 30dip , 40px
android:layout_marginBottom 离某元素底边沿的间隔
android:layout_marginLeft 离某元素左边沿的间隔
android:layout_marginRight 离某元素右边沿的间隔
android:layout_marginTop 离某元素上边沿的间隔)
相对布局是android布局中最为强大的,首先它可以设置的属性是最多了,其次它可以做的事情也是最多的。android手机屏幕的分辨率五花八门所以为了考虑屏幕自适应的情况所以在开发中建议大家都去使用相对布局 它的坐标取值范围都是相对的所以使用它来做自适应屏幕是正确的。
(里面可以放多个控件,只是一行只能放一个控件,下边是几种 RelativeLayout 的属性
第一类 : 属性值为 true 或 false
android:layout_centerHrizontal 程度居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent 相对于父元素完全居中
android:layout_alignParentBottom 贴紧父元素的下边沿
android:layout_alignParentLeft 贴紧父元素的左边沿
android:layout_alignParentRight 贴紧父元素的右边沿
android:layout_alignParentTop 贴紧父元素的上边沿
android:layout_alignWithParentIfMissing 若找不到兄弟元素以父元素做参照物
第二类:属性值必须为 id 的引用名“ @id/id-name ”
android:layout_below 在某元素的下方
android:layout_above 在某元素的上方
android:layout_toLeftOf 在某元素的左边
android:layout_toRightOf 在某元素的右边
android:layout_alignTop 本元素的上边沿和某元素的的上边沿对齐
android:layout_alignLeft 本元素的左边沿和某元素的的左边沿对齐
android:layout_alignBottom 本元素的下边沿和某元素的的下边沿对齐
android:layout_alignRight 本元素的右边沿和某元素的的右边沿对齐
第三类:属性值为具体的像素值,如 30dip , 40px
android:layout_marginBottom 离某元素底边沿的间隔
android:layout_marginLeft 离某元素左边沿的间隔
android:layout_marginRight 离某元素右边沿的间隔
android:layout_marginTop 离某元素上边沿的间隔)
3.帧布局(FrameLayout)
原理是在控件中绘制任何一个控件都可以被后绘制的控件覆盖,最后绘制的控件会盖住之前的控件。视图都以层叠的方式显示,第一个添加的控件在最底层,最后一个添加的在最顶层,上一层会覆盖下一层的控件。
原理是在控件中绘制任何一个控件都可以被后绘制的控件覆盖,最后绘制的控件会盖住之前的控件。视图都以层叠的方式显示,第一个添加的控件在最底层,最后一个添加的在最顶层,上一层会覆盖下一层的控件。
(最简单的布局形式,里面可以放多个控件,不过控件的地位都是相对地位)
4.绝对布局(AbsoluteLayout)
使用绝对布局可以设置任意控件的 在屏幕中 X Y 坐标点,和帧布局一样后绘制的控件会覆盖住之前绘制的控件。AbsoluteLayout没有页边框,允许元素之间互相重叠 (不推荐使用,因为其在不同的设备上可能不能很好地工作
使用绝对布局可以设置任意控件的 在屏幕中 X Y 坐标点,和帧布局一样后绘制的控件会覆盖住之前绘制的控件。AbsoluteLayout没有页边框,允许元素之间互相重叠 (不推荐使用,因为其在不同的设备上可能不能很好地工作
5.表格布局(TableLayout)
在表格布局中可以设置TableRow 可以设置 表格中每一行显示的内容 以及位置 ,可以设置显示的缩进,对齐的方式。
一些注意事项:
TextView 的属性 :
在表格布局中可以设置TableRow 可以设置 表格中每一行显示的内容 以及位置 ,可以设置显示的缩进,对齐的方式。
一些注意事项:
- LinearLayout 和 RelativeLayout 应该又是其中用的较多的两种。AbsoluteLayout 比较少用,
- 各布局不要乱花各自的属性。比如把属于 AbsoluteLayout 布局的android:layout_x和android:layout_y用到 LinearLayout 布局或 RelativeLayout 布局,或者把 RelativeLayout 布局的 below , rightof 等属性应用到其他布局中。如许做固然不会报错,但这是白浪费情感的工作,底子达不到我们须要的结果。
- 关于android:layout_width="fill_parent" 和 android:layout_height="wrap_content" ,这是对每个布局宽和高的设置。 wrap_content 可默示跟着此中控件的不合而改变这个布局的宽度或高度,类似于主动设置宽和高, fill_parent 使布局填充全部屏幕,别的还有一种 match_parent ,它本质上和 fill_parent 一样,并从 API Level8 开端调换 fill_parent 。
TextView 的属性 :
- android:autoLink //设置是否当文本为URL链接/email/德律风号码/map时,文本显示为可点击的链接。可选值(none/web /email/phone/map/all)
- android:autoText //若是设置,将主动履行输入值的拼写改正。此处无结果,在显示输入法并输入的时辰起感化
- android:bufferType //指定getText()体式格式取得的文本类别。选项editable 类似于StringBuilder可追加字符,也就是说getText后可调用append办法设置文本内容。spannable 则可在给定的字符区域应用样式
- android:capitalize //设置英文字母大写类型。此处无结果,须要弹出输入法才干看获得,拜见EditView此属性申明
- android:cursorVisible //设定光标为显示/隐蔽,默认显示
- android:digits //设置容许输入哪些字符。如“1234567890.+-*/% ()”
- android:drawableBottom //在text的下方输出一个drawable,如图片。若是指定一个色彩的话会把text的靠山设为该色彩,并且同时和background应用时覆盖后者
- android:drawableLeft //在text的左边输出一个drawable,如图片
- android:drawablePadding //设置text与drawable(图片)的间隔,与drawableLeft、 drawableRight、 drawableTop、drawableBottom一路应用,可设置为负数,零丁应用没有结果
- android:drawableRight //在text的右边输出一个drawable
- android:drawableTop //在text的正上方输出一个drawable
- android:editable //设置是否可编辑
- android:editorExtras //设置文本的额外的输入数据
- android:ellipsize //设置当文字过长时,该控件该如何显示。有如下值设置:”start”—?省略号显示在开首;”end” ——省略号显示在结尾;”middle”—-省略号显示在中心;”marquee” ——以跑马灯的体式格式显示(动画横向移动)
- android:freezesText //设置保存文本的内容以及光标的地位
- android:gravity //设置文本地位,如设置成“center”,文本将居中显示
- android:hintText //为空时显示的文字提示信息,可经由过程textColorHint设置提示信息的色彩。此属性在 EditView中应用,然则这里也可以用
- android:imeOptions //附加功能,设置右下角IME动作与编辑框相干的动作,如actionDone右下角将显示一个“完成”,而不设置默认是一个回车符号。这个在EditView中再具体申明,此处无用
- android:imeActionId //设置IME动作ID
- android:imeActionLabel //设置IME动作标签
- android:includeFontPadding //设置文本是否包含顶部和底部额外空白,默认为true
- android:inputMethod //为文本指定输入法,须要完全限制名(完全的包名)。例如:com.google.android.inputmethod.pinyin,然则这里报错找不到
- android:inputType //设置文本的类型,用于帮助输入法显示合适的键盘类型。在EditView中再具体申明,这里无结果
- android:linksClickable //设置链接是否点击连接,即使设置了autoLink
- android:marqueeRepeatLimit //在ellipsize指定marquee的景象下,设置反复迁移转变的次数,当设置为 marquee_forever时默示无穷次
- android:ems //设置TextView的宽度为N个字符的宽度。这里测试为一个汉字字符宽度
- android:maxEms //设置TextView的宽度为最长为N个字符的宽度。与ems同时应用时覆盖ems选项
- android:maxLength //限制显示的文本长度,超出项目组不显示
- android:lines //设置文本的行数,设置两行就显示两行,即使第二行没稀有据
- android:maxLines //设置文本的最大显示行数,与width或者layout_width连络应用,超出项目组主动换行,超出行数将不显示
- android:minLines //设置文本的最小行数,与lines类似
- android:lineSpacingExtra //设置行间距
- android:lineSpacingMultiplier //设置行间距的倍数。如”¥2
- android:numeric //若是被设置,该TextView有一个数字输入法。此处无用,设置后独一结果是TextView有点击结果,此属性在EdtiView将具体申明
- android:password //以小点”.”显示文本 android:phoneNumber设置为德律风号码的输入体式格式
- android:privateImeOptions //设置输入法选项,此处无用,在EditText将进一步评论辩论
- android:scrollHorizontally //设置文本超出TextView的宽度的景象下,是否呈现横拉条
- android:AllOnFocus //若是文本是可选择的,让他获取核心而不是将光标移动为文本的开端地位或者末尾地位。TextView中设置后无结果
- android:shadowColor //指定文本暗影的色彩,须要与shadowRadius一路应用
- android:shadowDx //设置暗影横向坐标开端地位
- android:shadowDy //设置暗影纵向坐标开端地位
- android:shadowRadius //设置暗影的半径。设置为0.1就变成字体的色彩了,一般设置为3.0的结果斗劲好
- android:singleLine //设置单行显示。若是和layout_width一路应用,当文本不克不及全部显示时,后面用“…”来默示。如android:text="test_ singleLine " android:singleLine="true" android:layout_width="20dp"将只显示“t…”。若是不设置singleLine或者设置为false,文本将主动换行 android:text设置显示文本. android:textAppearance设置文字外观。如 “?android:attr/textAppearanceLargeInverse”这里引用的是体系自带的一个外观,?默示体系是否有这种外观,不然应用默认的外观。可设置的值如下:textAppearanceButton/textAppearanceInverse /textAppearanceLarge/textAppearanceLargeInverse/textAppearanceMedium/textAppearanceMediumInverse/textAppearanceSmall/textAppearanceSmallInverse
- android:textColor //设置文本色彩
- android:textColorHighlight //被选中文字的底色,默认为蓝色
- android:textColorHint //设置提示信息文字的色彩,默认为灰色。与hint一路应用。
- android:textColorLink //文字链接的色彩.
- android:textScaleX //设置文字之间间隔,默认为¥2。
- android:textSize //设置文字大小,推荐怀抱单位”sp”,如”15sp”
- android:textStyle //设置字形[bold(粗体) 0, italic(斜体) 1, bolditalic(又粗又斜) 2] 可以设置一个或多个,用“|”隔开
- android:typeface //设置文本字体,必须是以下常量值之一:normal 0, sans 1, serif 2, monospace(等宽字体) 3]
- android:height //设置文本区域的高度,支撑怀抱单位:px(像素)/dp/sp/in/mm(毫米)
- android:maxHeight //设置文本区域的最大高度
- android:minHeight //设置文本区域的最小高度
- android:width //设置文本区域的宽度,支撑怀抱单位:px(像素)/dp/sp/in/mm(毫米),与layout_width 的差别看这里
- android:maxWidth //设置文本区域的最大宽度
- android:minWidth //设置文本区域的最小宽度 android布局属性详解 RelativeLayout用到的一些首要的属性:第一类:属性值为true或false
- android:layout_centerHrizontal //程度居中
- android:layout_centerVertical //垂直居中
- android:layout_centerInparent //相对于父元素完全居中
- android:layout_alignParentBottom //贴紧父元素的下边沿
- android:layout_alignParentLeft //贴紧父元素的左边沿
- android:layout_alignParentRight //贴紧父元素的右边沿
- android:layout_alignParentTop //贴紧父元素的上边沿
- android:layout_alignWithParentIfMissing //若是对应的兄弟元素找不到的话就以父元素做参照物 第二类:属性值必须为id的引用名“@id/id-name”
- android:layout_below //在某元素的下方
- android:layout_above //在某元素的的上方
- android:layout_toLeftOf //在某元素的左边
- android:layout_toRightOf //在某元素的右边
- android:layout_alignTop //本元素的上边沿和某元素的的上边沿对齐
- android:layout_alignLeft //本元素的左边沿和某元素的的左边沿对齐
- android:layout_alignBottom //本元素的下边沿和某元素的的下边沿对齐
- android:layout_alignRight //本元素的右边沿和某元素的的右边沿对齐 第三类:属性值为具体的像素值,如30dip,40px
- android:layout_marginBottom //离某元素底边沿的间隔
- android:layout_marginLeft //离某元素左边沿的间隔
- android:layout_marginRight //离某元素右边沿的间隔
- android:layout_marginTop //离某元素上边沿的间隔 EditText的android:hint 设置EditText为空时输入框内的提示信息