Android常用布局文件中元素的属性

1.Android常用布局文件中元素的属性

每个View和ViewGroup对象支持他们自己的各种XML属性。一些属性特定于一个View对象(例如,TextView支持textSize属性),但是这些属性也被继承自这个类的任何View对象继承。一些属性对所有View对象可用,因为他们从根View类继承(诸如id属性)。并且,其他属性被考虑为“布局参数”,这些属性描述特定View对象的特定布局方向,由对象的父ViewGroup对象定义。

1.1。ID属性

每个View对象都有一个关联的ID,来唯一标识它。当应用程序被编译时,这个ID作为一个整数引用。但是ID通常是在布局XML文件中作为字符串分配的,作为元素的id属性。这个XML属性对所有的View对象可用且会经常用到。XML中的ID语法如下:

android:id="@+id/my_button"

字符串前的@符号表示XML解析器应该解析和扩展剩下的ID字符串,并把它作为ID资源。+符号表示这是一个新的资源名字,它必须被创建且加入到我们的资源(R.java文件,R是Resource)。Android框架提供一些其他的ID资源。当引用一个 Android资源ID时,你不需要+符号,但是你必须添加android包名字空间,如下:

android:id="@android:id/empty"

为了创建视图和从应用程序引用他们,通常的模式是:

  1. 首先在布局文件中定义一个视图/构件对象并分配一个唯一的ID: 
    <Button android:id="@+id/my_button" 
            android:layout_width="wrap_content" 
            android:layout_height="wrap_content" 
            android:text="@string/my_button_text"/>
  2. 然后创建一个视图对象实例并从布局中获取它(典型的是在onCreate()方法中): 
    Button myButton = (Button) findViewById(R.id.my_button);
1.2、布局参数

名为layout_something的XML布局属性,为视图定义适合于它所驻留的ViewGroup的布局参数。每个ViewGroup类实现一个扩展自ViewGroup.LayoutParams的嵌套类。这个子类包含为每个子视图定义大小位置的属性类型,以适合于该视图组。如下图所示,父视图组为每个子视图定义布局参数(包括子视图组)。

layoutparams    
图2、布局参数

注意每个LayoutParams子类有它自己的设置值的语法。每个子元素必须定义适合于它父视图的LayoutParams,虽然它可能也为自己的子视图定义不同LayoutParams。

所有的视图组包括宽带和高度(layout_widthlayout_height),并且每个视图要求要定义它们。许多LayoutParams也包括可选的边距和边界。你可以指定宽度和高度的具体值,虽然你可能并不想这样做。更多地你将告诉视图它的大小依据它内容要求或跟父视图组所允许的一样大(分别用wrap_contentfill_parent值)。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值