【教程】(免密)状态栏布局讲解
2015-03-24 22:23:52 -0700
加群
410073350 (点击数字)一起交流讨论喔,群内资源丰富!
本贴来自
玩机壹族吧 Android的五大布局分别是LinearLayout(线性布局)、FrameLayout(单帧布局,也叫框架布局)、RelativeLayout(相对布局)、AbsoluteLayout(绝对布局)和TableLayout(表格布局)。而我们对于仿魅族用得更多的是线性布局。然而对于有的少部分手机它也涉及框架布局和相对布局。
主要讲线性布局
android:background 设置整个布局画面的背景 , 如android:background='@drawable/img_bg' //img_bg就为为drawable下的一张图片 。比如状态栏透明,就需要改这个引号里的为透明代码。
android:orientation="vertical"垂直线性布局,"horizontal"水平线性布局
~~~~~~~分割线~~~~~~~~
Ø android:id 为控件指定相应的id
Ø android:text 指定控件当中显示的文字,需要注意的是,尽量使用strings.xml
Øandroid:textSize ="35.0dip"指定控件当中字体的大小 ,比如添加到时间代码或者运营商等等代码里面就可以控制时间大小。
Øandroid:textcolor=" #264EBF "这是控制颜色的代码。引号里的即为颜色代码。此为蓝色。你们也可以自己更改。比如添加到时间和运营商等等里面就可以控制颜色。
即为android:layout_width="fill_parent"定义当前视图在屏幕上 可以消费的宽度,fill_parent即填充整个屏幕。
android:layout_height="wrap_content":随着文字栏位的不同 而改变这个视图的宽度或者高度。有点自动设置框度或者高度的意思
android:gravity="top(上)"(buttom(下)、left(左)、right右、center_vertical(中心垂直)、fill_vertical、center_horizontal(中心平行)、fill_horizontal、center、fill、clip_vertical、clip_horizontal)控制布局中控件的对齐方式。如果是没有子控件的控件设置此属性,表示其内容的对齐方式,比如说TextView里面文字的对齐方式;
~~~~~~~分割线~~~~~~~
若是有子控件的控件设置此属性,则表示其子控件的对齐方式,gravity如果需要设置多个属性值,需要使用“|”进行组合,如右下(gravity='bottom|right)
android:gravity 与 android:layout_gravity的区别
android:gravity是指定本元素的子元素相对它的对齐方式。
android:layout_gravity是指定本元素相对它的父元素的对齐方式( 如果子控件layout_gravity对齐方式设置为右对齐,如果想layout_gravity起作用的话,线性布局必须是垂直, 同理,如果对齐方式设置为下对齐,则线性布局必须是水平的。 对于线性布局,其中的子控件的对齐属性如果设置右下对齐,即:layout_gravity='bottom|right',那么 如果是水平线性布局,则下对齐起作用,右对齐不起作用。 如果是垂直线性布局,则右对齐起作用,下对齐不起作用。 )。后面举个例子
例子:布局对于子控件来说具有绝对的权威,在布局的gravity属性中定义的对齐方式是什么就是什么,子控件无法进行修改。
1.如果布局是水平线性布局,则子控件可以修改自身的上下对齐方式,即:layout_gravity='top'和layout_gravity='bottom'
是可以起作用的,这将会对布局中gravity属性定义的上下对齐方式进行覆盖。
2.如果布局是垂直线性布局,则子控件可以修改自身的左右对齐方式,即:
layout_gravity='left'和layout_gravity='right'
是可以起作用的。这将会对布局中gravity属性定义的左右对齐方式进行覆盖。
(注:线性布局没有orientation属性,默认是水平线性布局)
~~~~~分割线~~~~~~~
android:padding 设置子元素与布局边缘之间的空白可以添加离左离右如 android:paddingLeft="111.dip"即为离布局左边缘距离(记住那个Left首字母大写,我就犯过这个错误导致不能回编译,其他也一样)
android:layout_margin="10dp" 设置自身对象边缘与父布局的边缘之间的空白
解决LinearLayout中控件不能居右对齐 在LinearLayout布局时使用右对齐(android:layout_gravity='right')控件对齐方式不生效,需要设置 android:layout_weight='1' 才能右对齐控件,原因在于后者把位置平分了。即为在 LinearLayout整段代码后面加 android:layout_weight='1'
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 的设置值 对该方向上空间的分配刚好相反。
android:sigleLine 如果设置为true,则将控件的内容在同一行中进行显示。
//如果字符太多就自动用“...”省略号代替。假如这个值为false的话,有可能内容太多把其它的控件给挤到看不到了
android:layout_alignParentLeft="true" /> 子视图的左边与其父视图的左边重合,也就是子视图在父视图中居左显示。
Subscribe |
Register |
Login
| N