Chinaunix首页 | 论坛 | 博客
  • 博客访问: 12876316
  • 博文数量: 1293
  • 博客积分: 13501
  • 博客等级: 上将
  • 技术积分: 17974
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-08 18:11
文章分类

全部博文(1293)

文章存档

2019年(1)

2018年(1)

2016年(118)

2015年(257)

2014年(128)

2013年(222)

2012年(229)

2011年(337)

分类: Android平台

2014-12-10 11:42:29

android:gravity用于设置View组件中(字体)的对齐方式

android:layout_gravity用于设置Container组件的对齐方式


eg:通过设置android:gravity="center"来让EditText中的文字在EditText组件中居中显示 时我们设置EditText的android:layout_gravity="center_horizontal|center_vertical"来让EditText组件在LinearLayout中居中显示。

 

image

上图中,如何实现A B控制分别在C中占一半,并且字体都居中显示?

 

一、EditText控制,主要是设置其TextView下面的Gravity才能使字体居中等效果生效!!!

image


  1. <LinearLayout
  2.      android:id="@+id/mainLayout"
  3.      android:layout_width="fill_parent"
  4.      android:layout_height="wrap_content"
  5.      android:layout_marginBottom="51dp"
  6.      android:orientation="horizontal" >
  7.      <TextView
  8.          android:id="@+id/textView2"
  9.          android:layout_width="0dp"
  10.          android:layout_height="fill_parent"
  11.          android:layout_weight="1"
  12.          android:gravity="center_vertical|center_horizontal"
  13.          android:text="TextView" />
  14.      <EditText
  15.          android:id="@+id/editText1"
  16.          android:layout_width="0dp"
  17.          android:layout_height="fill_parent"
  18.          android:layout_weight="1"
  19.          android:ems="10"
  20.          android:gravity="center_horizontal|center_vertical"
  21.          android:inputType="number"
  22.          android:text="555" />
  23. </LinearLayout>


二、设置LinearLayout内的控件长度比例相同

将两个控件的weight分别设置为:

android:layout_weight="1"。

image

三、LinearLayout的几个属性

Orientation方向:即指定LinearLayout是代表一行还是一列,可以为horizontal或vertical,如android:orientation="vertical",当然也在可以在代码里通过setOrientation()方法来设置。

FillMode填充方式:所有在LinearLayout的控件都必须指定它的填充方式,即设置android:layout_width和android:layout_height,可以为三种值
    (1)具体的像素值,如20px
    (2)wrap_content,表示按控件文本实际长度显示
    (3)fill_parent,表示填充剩下的所有可用空间。

Weight权重:如果你想让一行或一列的控件按比例显示,这时候权重就起到作用了,如想让一行里面两控件其中一控件占两倍于另一控件的空间,可以把其中一控件的android:layout_weight设置为1,另一个为2即可


参考文献:

http://blog.163.com/fanning_7213/blog/static/2496505201071032214239/

阅读(4281) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~