布局属性

布局属性
布局属性

布局:

在android中我们常用的布局方式有这么几种:

1.LinearLayout (线性布局):(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角)

线性布局分为水平线性和垂直线性二者的属性分别为:android:orientation= " horizontal " android:orientation= "vertical" 。

2.RelativeLayout (相对布局 ): (里面可以放多个控件,但是一行只能放一个控件)

附加几类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.TableLayout (表格布局 ): (这个要和TableRow配合使用,很像html里面的table)

这个表格布局不像HTML中的表格那样灵活,只能通

过 TableRow 属性来控制它的行而列的话里面有几个控件就是几列(一般情况)。如:

表示两行两列的一个表格。

android:gravity="center" 书面解释是权重比。其时就是让它居中显示。它还可以动态添加里面的每行每列。如下代码所示:

/*根据id查找表格对象*/

TableLayouttableLayout = (TableLayout) findViewById(R.id.table01);

/*创建列对象*/

TableRowtableRow = new TableRow(this);

/*文本框对象*/

TextView temp = new TextView(this);

temp.setText("text的值");

/*将此文本添加到列中*/

tableRow.addView(temp);

android:stretchColumns="1,2,3,4" 它的意思就是自动拉伸1,2,3,4列。

4.AbsoluteLayout (绝对布局 ): (里面可以放多个控件,并且可以自己定义控件的x,y 的位置)

5.FrameLayout (帧布局 ):(里面可以放多个控件,不过控件的位置都是相对位置)

在它里面的控件都是按后面的一个控件叠加在前一个控件上来显示的,所有元素都被放置在最左上角。如:

android:layout_height="wrap_content" android:layout_weight="1">

android:layout_width="wrap_content"

android:layout_height="wrap_content" android:visibility="invisible"

android:src="@drawable/lotusleaf">

android:layout_width="wrap_content"

android:layout_height="wrap_content" android:src="@drawable/frog_right"

android:visibility="invisible">

表示的是id为f1的控件叠加在id为iv1的控件上面显示

(LinearLayout和RelativeLayout应该又是其中用的较多的两种。AbsoluteLayout比较少用,因为它是按屏幕的绝对位置来布局的如果屏幕大小发生改变的话控件的位置也发生了改变。这个就相当于HTML中的绝对布局一样,一般不推荐使用)

注意事项:

1、各布局不要乱用各自的属性。比如把属于AbsoluteLayout布局的android:layout_x 和android:layout_y用到LinearLayout布局或RelativeLayout布局,或者

把RelativeLayout布局的below,rightof等属性应用到其他布局中。这样做虽然不会报错,但这是白浪费感情的工作,根本达不到我们需要的效果。

2、关于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:selectAllOnFocus //如果文本是可选择的,让他获取焦点而不是将光标移动为文本的开始位置或者末尾位置。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/textAppeara nceMediumInverse/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为空时输入框内的提示信息

android:gravity //属性是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置.以button为例,

android:gravity="right"则button上面的文字靠右

android:layout_gravityandroid:layout_gravity是用来设置该view相对与起父view 的位置.比如一个button 在linearlayout里,你想把该button放在靠左、靠右等位置就可以通

过该属性设置.以button为例,android:layout_gravity="right"则button靠右android:layout_alignParentRight使当前控件的右端和父控件的右端对齐。这里属性值只能为true或false,默认false。android:scaleType:android:scaleType是控制图片如何resized/moved来匹对ImageView的size。ImageView.ScaleType / android:scaleType值的意义区别:CENTER /center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示CENTER_CROP / centerCrop按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽) CENTER_INSIDE / centerInside将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽

FIT_CENTER / fitCenter把图片按比例扩大/缩小到View的宽度,居中显示FIT_END / fitEnd 把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置FIT_START / fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置FIT_XY / fitXY把图片?不按比例扩大/缩小到View的大小显示MATRIX / matrix 用矩阵来绘制,动态缩小放大图片来显示。** 要注意一点,Drawable文件夹里面的图片命名是不能大写的

Edittext 的属性: EditText继承关系:View-->TextView-->EditText。EditText的属性很多,这里介绍几个:android:layout_gravity="center_vertical" //设置控件显示的位置:默认top,这里居中显示,还有bottom android:hint="请输入数字!" //设置显示在空间上的提示信

息android:numeric="integer" //设置只能输入整数,如果是小数则是:decimal android:singleLine="true" //设置单行输入,一旦设置为true,则文字不会自动换行。android:password="true" //设置只能输入密

码android:textColor = "#ff$200" //字体颜

色android:textStyle="bold" //字体,bold, italic,

bolditalic android:textSize="20dip" //大小android:capitalize = "characters" //以大写字母

写android:textAlign="center" //EditText没有这个属性,但TextView 有,居中android:textColorHighlight="#cccccc" //被选中文字的底色,默认为蓝色android:textColorHint="#ffff00" //设置提示信息文字的颜色,默认为灰色android:textScaleX="1.5" //控制字与字之间的间

距android:typeface="monospace" //字型,normal, sans, serif, monospace android:background="@null" //空间背景,这里没有,指透明android:layout_weight="1" //权重,控制控件之间的地位,在控制控件显示的大小时蛮有用

的。android:textAppearance="?android:attr/textAppearanceLargeInverse"

1.EditText默认不弹出软件键盘

方法一:

在AndroidMainfest.xml中选择哪个activity,设置windowSoftInputMode属性为adjustUnspecified|stateHidden

android:windowSoftInputMode="adjustUnspecified|stateHidden"

方法二:

让EditText失去焦点,使用EditText的clearFocus方法

edit.clearFocus();

方法三:

强制隐藏Android输入法窗口

例如:EditText edit=(EditText)findViewById(R.id.edit);

InputMethodManagerimm =

(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);

imm.hideSoftInputFromWindow(edit.getWindowToken(),0);

2.EditText始终不弹出软件键盘

例:EditText edit=(EditText)findViewById(R.id.edit);

edit.setInputType(InputType.TYPE_NULL);

Button 继承自 VIEW , VIEW 有的属性它都能用

(这里的样式是当按钮被按下时的显示)

android:startColor="@drawable/gray"

android:endColor="@drawable/white"

android:angle="*"/>

android:width="*dp"

android:color="@drawable/teal"/>

android:radius="*dp"/>

android:left="**dp"

android:top="*dp"

android:right="**dp"

android:bottom="*dp"/>

(这里的样式是移动到按钮时的显示)

android:startColor="@drawable/silver"

android:endColor="@drawable/springgreen"

android:angle="*"/>

android:width="*dp"

android:color="@drawable/teal"/>

android:radius="*dp"/>

android:left="**dp"

android:top="*dp"

android:right="**dp"

android:bottom="*dp"/>

(这里的样式是按钮正常时的显示)

android:startColor="@drawable/silver"

android:endColor="@drawable/snow"

android:angle="*"/>

android:width="*dp"

android:color="@drawable/teal"/>

android:radius="*dp"/>

android:left="**dp"

android:top="*dp"

android:right="**dp"

android:bottom="*dp"/>

注:

android:left="**dp"

android:top="*dp"

android:right="**dp"

android:bottom="*dp" />

这里left和right控制的是Button上的字体与按钮的左边缘和右边缘的距离,也就是控制按钮是长还是短;这里的top和bottom控制的是Button上的字体与按钮的上边缘和下边缘的距离,也就是控制按钮时高还是矮。

Shape样式圆滑效果:

android:right="*dp" android:bottom="*dp"/>

CheckBox

RadioGroup

Spinner

TimePicker

ScrollView

ProgressBar

RatingBar

ImageView

ImageButton android:background="#00000000" //设置背景图空白的部分直接透视背景

ImageSwicher&Gallery

GradView

Tab

Menu

Android布局属性大全

Android布局属性大全 布局: AbsoluteLayout(绝对布局): xmlns:android="https://www.360docs.net/doc/896168653.html,/apk/res/android" style="@..." android:clipChildren="true|false" android:clipToPadding="true|false" android:layoutAnimation="@---" android:animationCache="true|false" android:persistentDrawingCache="none|animation|scrolling|all":持续高速缓存绘图 android:alwaysDrawnWithCache="true|false" android:andStatesFromChildre="true|false" android:descendantFocusability="beforeDescendants|afterDescendants|bl ocksDescendants":后裔可聚焦 android:id="@+id/absoluteLayout" android:tag="@---" android:android:scrollX="---" android:android:scrollY="---" android:background="@---" android:padding="----" android:paddingLeft="----" android:paddingTop="----" android:paddingRight="----" android:paddingBotton="---" android:focusable="true|false" android:focusableInTouchMode="true|false" android:visibility="visible|invisible|gone" android:fitsSystemWindows="true|false":适合系统窗口 android:scrollbars="none|horizontal|vertical" android:scrollbarStyle="insideOverlay(内覆盖)|insideInset(内插 图)|outsideOverlay(外覆盖)|outsideInset(外插图)" android:isScrollContainer="true|false":是一个滚动集合 android:fadeScrollbars="true|false":褪色的滚动条 android:scrollbarFadeDuration="---":卷轴淡出 android:scrollDefaultDelayBeforeFade="---":滚动前默认延迟 android:scrollbarSize="---" android:scrollbarThumbHorizontal="@----":拇指水平滚动条 android:scrollbarThumbVertical="@----":拇指垂直滚动条 android:scrollbarTrackVertical="@---":垂直滚动条轨道 android:scrollbarTrackHorizontal="@---":水平滚动条轨道 android:scrollbarAlwaysDrawHorizontalTrack="true|false":水平滚动条总是吸引轨道

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为空时输入框内的提示信息。 android:gravity android:gravity属性是对该view 内容的限定.比如一个button 上面的text. 你可以设置该text 在view的靠左,靠右等位置.以button为例,android:gravity="right"则button上面的文字靠右 android:layout_gravity android:layout_gravity是用来设置该view相对与起父view 的位置.比如一个button 在

Android 开发之旅-view的几种布局方式及实践

Android 开发之旅:view的几种布局方式及实践 https://www.360docs.net/doc/896168653.html,/1943397/363552 2010-06-06 14:14:00 标签:布局 View 实践移动开发 Android 原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。 https://www.360docs.net/doc/896168653.html,/1943397/363552 引言 通过前面两篇: 1.Android 开发之旅:又见Hello World! 2.Android 开发之旅:深入分析布局文件&又是“Hello World!” 我们对Android应用程序运行原理及布局文件可谓有了比较深刻的认识和理解,并且用“Hello World!”程序来实践证明了。在继续深入Android开发之旅之前,有必要解决前两篇中没有介绍的遗留问题:View的几种布局显示方法,以后就不会在针对布局方面做过多的介绍。View的布局显示方式有下面几种:线性布局(Linear Layout)、相对布局(Relative Layout)、表格布局(Table Layout)、网格视图(Grid View)、标签布局(Tab Layout)、列表视图(List View)、绝对布局(AbsoluteLayout)。本文虽然是介绍View的布局方式,但不仅仅是这样,其中涉及了很多小的知识点,绝对能给你带来Android大餐! 本文的主要内容就是分别介绍以上视图的七种布局显示方式效果及实现,大纲如下: 1.1、View布局概述 2.2、线性布局(Linear Layout) 1. 2.1、Tips:android:layout_weight="1" 3.3、相对布局(Relative Layout) 4.4、表格布局(Table Layout) 5.5、列表视图(List View) 1. 5.1、一个小的改进 2. 5.2、补充说明 6.6、网格视图(Grid View) 7.7 、绝对布局() 8.8、标签布局(Tab Layout) 1、view的布局显示概述 通过前面的学习我们知道:在一个Android应用程序中,用户界面通过View和ViewGroup对象构建。Android中有很多种View和ViewGroup,他们都继承自View类。View对象是Android平台上表示用户界面的基本单元。 View的布局显示方式直接影响用户界面,View的布局方式是指一组View元素如何布局,准确的说是一个ViewGroup中包含的一些View怎么样布局。ViewGroup类是布局(layout)和视图容器(View container)的基类,此类也定义了https://www.360docs.net/doc/896168653.html,youtParams类,它作为布局参数的基类,此类告诉父视图其中的子视图想如何显示。例如,XML布局文件中名为layout_something的属性(参加上篇的4.2节)。我们要介绍的View的布局方式的类,都是直接或间接继承自ViewGroup类,如下图所示:

Android七种布局解析

我们对Android应用程序运行原理及布局文件可谓有了比较深刻的认识和理解,并且用“Hello World!” 程序来实践证明了。在继续深入Android开发之旅之前,有必要解决前两篇中没有介绍的遗留问题:View 的几种布局显示方法,以后就不会在针对布局方面做过多的介绍。View的布局显示方式有下面几种: 线性布局(Linear Layout)、 相对布局(Relative Layout)、 表格布局(Table Layout)、 网格视图(Grid View)、 标签布局(Tab Layout)、 列表视图(List View)、 绝对布局(AbsoluteLayout)。本文虽然是介绍View的布局方式,但不仅仅是这样,其中涉及了很多小的知识点,绝对能给你带来Android大餐! 本文的主要内容就是分别介绍以上视图的七种布局显示方式效果及实现,大纲如下: ?1、View布局概述 ?2、线性布局(Linear Layout) o 2.1、Tips:android:layout_weight="1" ?3、相对布局(Relative Layout) ?4、表格布局(Table Layout) ?5、列表视图(List View) o 5.1、一个小的改进 o 5.2、补充说明 ?6、网格视图(Grid View) ?7 、绝对布局() ?8、标签布局(Tab Layout) 1、view的布局显示概述 通过前面的学习我们知道:在一个Android应用程序中,用户界面通过View和ViewGroup对象构建。A ndroid中有很多种View和ViewGroup,他们都继承自View类。View对象是Android平台上表示用户界面的基本单元。 View的布局显示方式直接影响用户界面,View的布局方式是指一组View元素如何布局,准确的说是一个ViewGroup中包含的一些View怎么样布局。ViewGroup类是布局(layout)和视图容器(View containe r)的基类,此类也定义了https://www.360docs.net/doc/896168653.html,youtParams类,它作为布局参数的基类,此 类告诉父视图其中的子视图想如何显示。例如,XML布局文件中名为layout_so mething的属性(参加上篇的4.2节)。我们要介绍的View的布局方式的类,都是直接或间接继承自ViewGroup类,如下图所示:

android布局layout中的一些属性(DOC)

android布局layout中的一些属性 1、可以使某些资源文件或UI组件可重用 2、定义一个文本编辑框,使用绝对定位 android:layout_x="20dip" android:layout_y="80dip" 3、控件位置 android:layout_centerHorizontal 控制该组件是否位于布局容器的水平居中位置android:layout_centerVertical 控制该组件是否位于布局容器的垂直居中位置android:layout_centerInParent 控制该组件是否位于布局容器的中央位置 android:layout_alignParentBottom 控制该组件是否与布局容器底端对齐 android:layout_alignParentLeft 控制该组件是否与布局容器左边对齐 android:layout_alignParentRight 控制该组件是否与布局容器右边对齐 android:layout_alignParentTop 控制该组件是否与布局容器顶端对齐 android:layout_toRightOf 控制该组件位于给出的ID组件的右侧 android:layout_toLeftOf 控制该组件位于给出的ID组件的左侧 android:layout_above 控制该组件位于给出的ID组件的上方 android:layout_below 控制该组件位于给出的ID组件的下方 android:layout_alignTop 控制该组件与给出的ID组件的上边界对齐 android:layout_alignBottom 控制该组件与给出的ID组件的下边界对齐 android:layout_alignLeft 控制该组件与给出的ID组件的左边界对齐 android:layout_alignRight 控制该组件与给出的ID组件的右边界对齐 4、设置单元格内的控件的形状(可压缩,可伸长,可隐藏等) android:shrinkColumns 设置该列的所有单元格的宽度可以被收缩,以保证该表格能够适应父容器宽度 android:stretchColumns 设置该列的所有单元格的宽度可以被拉伸,以保证组件能完全填满表格空余空间 android:collapseColumns 设置该列的所有单元格会被隐藏 5、TextView属性设置 设置字体为30pt android:textSize="30pt" 设置中间省略android:singleLine="true"android:ellipsize="middle" 对邮件增加链接android:autoLink="email"android:autoLink="email" 测试密码框android:password="true" 绘制一张图片android:drawableLeft="@drawable/icon" 6、EditText属性设置 当前组件在得到焦点的时候,自动选取该组件内的所有的文本内容 android:selectAllOnFocus="true"

Android开发TableLayout属性介绍

在android开发中,常见的布局方式有:LinearLayout (线性布局),RelativeLayout (相对布局),TableLayout (表格布局),AbsoluteLayout (绝对布局),FrameLayout (帧布局),今天我们主要介绍表格布局的相关属性。 TableLayout经常用到的属性有: android:collapseColumns:以第0行为序,隐藏指定的列: android:collapseColumns该属性为空时,效果如下图: 把android:collapseColumns=0,2--------------》意思是把第0和第2列去掉,如下图: android:shrinkColumns:以第0行为序,自动延伸指定的列填充可用部分: 当LayoutRow里面的控件还没有布满布局时,shrinkColumns不起作用,如下图: 设置了shrinkColumns=0,1,2,布局完全没有改变,因为LayoutRow里面还剩足够的空间。当LayoutRow布满控件时,如下图: 设置设置了shrinkColumns=2,则结果如下图,控件自动向垂直方向填充空间:

android:stretchColumns:以第0行为序,尽量把指定的列填充空白部分: 设置stretchColumns=1,则结果如下图,第1列被尽量填充(Button02与TextView02同时向右填充,直到TextView03被压挤到最后边)。 更多android开发视频入门教程,点此查看>> https://www.360docs.net/doc/896168653.html,/course/2/。

AndroidXML布局属性详解

各种Layout用到的一些重要的属性: 第一类:属性值为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布局属性

android:autoLink设置是否当文本为URL链接/email/电话号码/map时,文本显示为可点击的链接。可选值(none/web/email/phone/map/all) android:autoText如果设置,将自动执行输入值的拼写纠正。 android:background 指定控件的背景色 android:bufferType指定getText()方式取得的文本类别。选项editable 类似于StringBuilder可追加字符,也就是说getText后可调用append方法设置文本内容。spannable 则可在给定的字符区域使用样式。 android:capitalize设置英文字母大写类型。 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:ems设置TextView的宽度为N个字符的宽度。 android:freezesText设置保存文本的内容以及光标的位置。 android:gravity设置文本位置,如设置成“center”,文本将居中显示。 android:height设置文本区域的高度,支持度量单位:px(像素)/dp/sp/in/mm(毫米) android:hintText为空时显示的文字提示信息,可通过textColorHint设置提示信息的颜色。android:imeOptions附加功能,设置右下角IME动作与编辑框相关的动作,如actionDone右下角将显示一个“完成”,而不设置默认是一个回车符号。 android:imeActionId设置IME动作ID。 android:imeActionLabel设置IME动作标签。 android:includeFontPadding设置文本是否包含顶部和底部额外空白,默认为true。android:inputMethod为文本指定输入法,需要完全限定名(完整的包名)。例如:com.google.android.inputmethod.pinyin android:inputType设置文本的类型,用于帮助输入法显示合适的键盘类型。 android:lines设置文本的行数,设置两行就显示两行,即使第二行没有数据。 android:lineSpacingExtra设置行间距。 android:lineSpacingMultiplier设置行间距的倍数。如”1.2” android:linksClickable设置链接是否点击连接,即使设置了autoLink。 android:marqueeRepeatLimit在ellipsize指定marquee的情况下,设置重复滚动的次数,当设置为marquee_forever时表示无限次。 android:maxEms设置TextView的宽度为最长为N个字符的宽度。与ems同时使用时覆盖ems 选项。

Android培训之五大布局讲解

Android培训之五大布局讲解 Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。Android的五大布局分别是LinearLayout(线性布局)、FrameLayout(单帧布局)、RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)和TableLayout(表格布局)。 LinearLayout: LinearLayout按照垂直或者水平的顺序依次排列子元素,每一个子元素都位于前一个元素之后。如果是垂直排列,那么将是一个N行单列的结构,每一行只会有一个元素,而不论这个元素的宽度为多少;如果是水平排列,那么将是一个单行N列的结构。如果搭建两行两列的结构,通常的方式是先垂直排列两个元素,每一个元素里再包含一个LinearLayout进行水平排列。 LinearLayout中的子元素属性android:layout_weight生效,它用于描述该子元素在剩余空间中占有的大小比例。加入一行只有一个文本框,那么它的默认值就为0,如果一行中有两个等长的文本框,那么他们的 android:layout_weight值可以是同为1。如果一行中有两个不等长的文本框,那么他们的android:layout_weight值分别为1和2,那么第一个文本框将占据剩余空间的三分之二,第二个文本框将占据剩余空间中的三分之一。 FrameLayout: FrameLayout是五大布局中最简单的一个布局,在这个布局中,整个界面被当成一块空白备用区域,所有的子元素都不能被指定放置的位置,它们统统放于这块区域的左上角,并且后面的子元素直接覆盖在前面的子元素之上,将前面的子元素部分和全部遮挡。显示效果如下,第一个TextView被第二个TextView 完全遮挡,第三个TextView遮挡了第二个TextView的部分位置。 AbsoluteLayout: AbsoluteLayout是绝对位置布局。在此布局中的子元素的 android:layout_x和android:layout_y属性将生效,用于描述该子元素的坐标位置。屏幕左上角为坐标原点(0,0),第一个0代表横坐标,向右移动此值增大,

Android界面布局简介

Android界面布局简介 绪论 开发一款应用,其界面布局是非常重要的,界面布局就像站队一样,布局好了,就是站队整齐,用户看起来就非常舒服,Android提供了几种常见的布局类型,包括AbsoluteLayout,FrameLayout,GridLayout,RelativeLayout,LinearLayout,TableLayout等,虽然这些布局非常简单,但是通过对这些布局的组合,嵌套,可以得到非常丰富的视图结构。 1.1 AbsoluteLayout(绝对布局) 在这中布局下,开发者需要明确地指定各个子视图在屏幕上的X/Y坐标。考虑到现在的设备多样性,这种布局不仅不灵活,而且很难确定一个视图的具体位置,因此在Android中的文档中,已经将其标识为deprecated(过时的)。下图1.1-1是用Eclipse开发Android应用中添加的一个AbsoluteLayout的xml 1.1—1 1.2 FrameLayout(帧布局) FrameLayout从屏幕中截取出一块区域用于显示单独的一项视图组件,通常FrameLayout仅仅包含一个视图,因为在不同设备中,包含多个视图时,不可避免出现子图叠加的现象。

在FrameLayout中,子视图以栈的形式进行绘制,最新添加的视图绘制在上面,FrameLayout的尺寸及可见性有其包含的最大子视图决定。 1.3GridLayput(网格布局) GridLayout是在API Level 14中才新添加的布局类型,它能够将一个视图按照网格的形式经行划分,并且以“格”为单位来为子视图分配空间,一个子视图可以占用一格也可以占用多格(通过属性rowSpan和columnSpan参数经行设置),这种布局使得多行多列的布局实现更加有效。 1.4 LinearLayou (线性布局) LinearLayout将所有的子视图按照一列或者一行的形式经行排列,默认的排列方式是水平的,可以通过setOrientation和setGravity方法或对应的属性具体对它的排列方式进行设置。通过嵌套使用LinearLayout开实现多行或多列的布局。 1.5 RelativeLayout(相对布局) RelativeLayout使得子视图使用相对关系作为参数来经行排列,常用的关系有:above(在某个视图上方),below(在某个视图下方),toLeftOf,toRightOf,alignBaseLine(与某个视图BaseLine对齐),alignBottom(与某个视图底部对齐)等。 1.6TableLayout(表格布局) 该布局与GridLayout有些类似,它以表格的形式组织其内部的子视图。

android 控件常用属性

第一类:属性值为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为空时输入框内的提示信息。

android线性布局参数详解

android线性布局参数详解 https://www.360docs.net/doc/896168653.html,/trampou/article/details/5752533 线性布局中,有4个及其重要的参数,直接决定元素的布局和位置,这四个参数是android:layout_gravity (是本元素相对于父元素的重力方向) android:gravity (是本元素所有子元素的重力方向) android:orientation (线性布局以列或行来显示内部子元素) android:layout_weight (线性布局内子元素对未占用空间【水平或垂直】分配权重值,其值越小,权重越大。 前提是子元素设置了android:layout_width = "fill_parent" 属性(水平方向)或android:layout_height = "fill_parent"属性(垂直方向) 如果某个子元素的android:layout_width = "wrap_content" 或android:layout_height ="wrap_content”, 则android:layout_weight 的设置值对该方向上空间的分配刚好相反。 下面以一个简单例子来说明这4个参数

布局属性

布局: 在android中我们常用的布局方式有这么几种: 1.LinearLayout (线性布局):(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角) 线性布局分为水平线性和垂直线性二者的属性分别为:android:orientation= " horizontal " android:orientation= "vertical" 。 2.RelativeLayout (相对布局 ): (里面可以放多个控件,但是一行只能放一个控件) 附加几类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.TableLayout (表格布局 ): (这个要和TableRow配合使用,很像html里面的table) 这个表格布局不像HTML中的表格那样灵活,只能通 过 TableRow 属性来控制它的行而列的话里面有几个控件就是几列(一般情况)。如:

Android 布局属性大全

RelativeLayout https://www.360docs.net/doc/896168653.html,/view/2e39724333687e21af45a97e.html?from=related&hasrec=1 https://www.360docs.net/doc/896168653.html,/view/d108da2fe2bd960590c677e2.html https://www.360docs.net/doc/896168653.html,/view/53e395f8770bf78a652954ce.html?from=related&hasrec=1 第一类:属性值为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_alignWithParentlfMissing 如果找不到对应的兄弟元素找不到,就以父元素做参照物。 第二类:属性值必须为id的引用名 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 android:layout_marginBottom 离某元素底边缘的距离 Android:layout_marginLeft 离某元素左边缘的的距离 Android:layout_marginRight 离某元素的右边缘的距离 Android:layout_marginTop 离某元素上边缘的距离 android:hint 设置EditText为空时输入的提示信息 android:gravity 对该view内容的限定:靠上下左右 android:layout_gravity="right" 用来设置该Container(组件)的靠左靠右 android:text 指定的控件当中显示的文字尽量使用string.xml文件当中的字符串Android:textSize 文字大小 Android:width 控件宽度 Android:height 控件高度 Android:layout_width 指定Container组件的宽度 Android:layout_height 指定Container组件的高度 View 按比例划分空间

Android页面布局小结

Andrioid布局: 在android中我们常用的布局方式有这么几种: 1.LinearLayout (线性布局):(里面只可以有一个控件,并且不能设计这个控件的位置,控件会放到左上角) 线性布局分为水平线性和垂直线性二者的属性分别为:android:orientation= " horizontal "android:orientation= "vertical"。 2.RelativeLayout (相对布局):(里面可以放多个控件,但是一行只能放一个控件) 附加几类RelativeLayout的属性供大家参考: 第一类:属性值为true或false android:layout_centerHrizontal 水平居中 android:layout_centerVertical 垂直居中 android:layout_centerInparent 相对于父元素完全居中 android:layout_alignParentBottom 贴紧父元素的下边缘 android:layout_alignParentLeft 贴紧父元素的左边缘 android:layout_alignParentRight 贴紧父元素的右边缘 android:layout_alignParentT op 贴紧父元素的上边缘 android:layout_alignWithParentIfMissing 若找不到兄弟元素以父元素做参照物 第二类:属性值必须为id的引用名“@id/id-name” android:layout_below 在某元素的下方 android:layout_above 在某元素的上方 android:layout_toLeftOf 在某元素的左边 android:layout_toRightOf 在某元素的右边 android:layout_alignT op 本元素的上边缘和某元素的的上边缘对齐android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐 android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐 第三类:属性值为具体的像素值,如30dip,40px android:layout_marginBottom 离某元素底边缘的距离 android:layout_marginLeft 离某元素左边缘的距离 android:layout_marginRight 离某元素右边缘的距离 android:layout_marginT op 离某元素上边缘的距离 3.T ableLayout (表格布局):(这个要和TableRow配合使用,很像html里面的table) 这个表格布局不像HTML中的表格那样灵活,只能通过TableRow 属性来控制它的行而列的话里面有几个控件就是几列(一般情况)。如:

android开发常用控件及布局

一、开发概述 Android的控件体系分为三个类别: 1、基本控件 2、布局 3、容器 这三类控件主要分布在两个包中: 1、android.view 提供抽象接口 2、android.widget 提供系统内置的大部分控件 整个系统得控件都继承自android.view.View ,而布局及容器类继承自android.view.ViewGroup。 基本控件主要包括ImageView、ProgressBar、SurfaceView、TextView、EditText等。 布局 虽然布局跟容器均继承自android.view.ViewGroup,但并不像SWT那样提供了面板+布局 的结构,而是每种Layout就是一中特殊的面板,包括AbsoluteLayout、Fram eLayout、 LinearLayout、TableLayout、RelativeLayout等。 容器 这里的容器是指采用了特定的布局并且提供了行为的控件,包含ListView、GridView、Gallery、 Spinner等。 二、android常用控件 android常用控件之TextView、EditView、Button、Menu 示例:一个计算应用程序,输入2个数字,点击按钮进行计算两个数的积并且返回结果。 当点击模拟器右侧的Menu按钮,在输入界面中显示一个有关于和退出的菜单。 项目运行效果图: 开发步骤: 1、新建一个Android项目 2、在布局文件中依次添加EditText、TextView、EditText、Button(一定要按照界面 上控件显示的顺序在布局文件中添加) 3、再新建一个布局文件用来显示计算的结果;在这个布局文件中添加一个LinearLayout 和一个TextView(默认的布局文件中默认就有一个LinearLayout,所以不需要手动添加, 新建的布局文件默认为空,所以需要手动添加) 4、编写第一个Activity a) 让Activity继承android的Activity b) 重写Activity的onCreate()方法 c) 设置这个Activity的布局文件 d) 根据控件id获得控件对象 e) 设置控件的值,这个值引用的是string.xml中的值,所以还需要在string.xml文件中 设置(最好是使用string.xml中的值,以便实现国际化);这个在布局文件中也能设置; 5、新建一个Activity,ResultActivity a) 让Activity继承android的Activity b) 重写Activity的onCreate()方法 c) 设置这个Activity的布局文件 d) 根据控件id获得控件对象 6、在第一个Activity中编写Button的监听器

相关主题
相关文档
最新文档