[zz]Android TableLayout

本文来自:http://ipfire.iteye.com/blog/976373

 

TableLayout说明:

 

1:TableLyaout 提供了android:layout_span,可以使用此属性让一个单元格跨越多列 ,相当于 HTML 的 colspan属性

 

2:TableLayout的子控件不能指定android:layout_width="wrap_content",它们会被强制接受fill_parent

 

3.TableLayout的内容是使用行来定义的,而不是使用列,Android通过查找包含最多单元格的行来确定表格中的列数

 

测试:

    @Override  
       public void onCreate(Bundle savedInstanceState) {  
           super.onCreate(savedInstanceState);  
           setContentView(R.layout.main);  
       }  

 

layout文件:

    <?xml version="1.0" encoding="utf-8"?>  
      
    <TableLayout xmlns:android="http://schemas.android.com/apk/res/android"  
            android:layout_width="fill_parent"  
            android:layout_height="wrap_content"  
            android:collapseColumns="3,4,5"  
            android:stretchColumns="1,2"  
            android:shrinkColumns="0,6"  
        >  
          
        <TableRow >  
            <Button  android:text="AA00"/>                                  
            <Button  android:text="BB11"/>  
            <Button  android:text="CC22"/>  
            <Button  android:text="DD33"/>  
            <Button  android:text="EE44"/>  
            <Button  android:text="FF55"/>  
            <Button  android:text="XXXXXXXXXXXXXXXXXX"/>  
        </TableRow>  
          
        <TableRow >  
            <Button  android:text="AA00"/>                                  
            <Button  android:text="BB11"/>  
            <Button  android:text="CC22"/>  
            <Button  android:text="XXXXXXXXXXXXXXXXXX"/>  
              
        </TableRow>  
          
          
        <TableRow >  
            <Button  android:text="AA00"/>                                  
            <Button  android:text="BB11" android:layout_span="2"/>  
            <Button  android:text="CC22"/>          
        </TableRow>  
          
          
        <Button android:text="BUTTON"   
            android:layout_width="wrap_content"  
            android:gravity="center"/>  
    </TableLayout> 

 

属性说明:

 

collapseColumns(隐藏)

        设置 TableLayout 内的 TableRow 中需要隐藏的列的列索引,多个用“,”隔开 

   1.android:collapseColumns:以第0行为序,隐藏指定的列:把

   android:collapseColumns=0,3 意思是把第0和第3列隐藏 ,即AA00,DD33隐藏

 

stretchColumns(拉伸)

        设置 TableLayout 内的 TableRow 中需要拉伸(该列会拉伸到所有可用空间)

        的列的列索引,多列个用“,”隔开(多列 每列填充空隙大小一样)

   当LayoutRow里面的控件已经布满布局时,shrinkColumns不起作用,设置了

       stretchColumns="1,2",布局完全没有改变,因为LayoutRow里面已经没有 空间了。

 

shrinkColumns (收缩)

        设置 TableLayout 内的 TableRow 中需要收缩(为了使其他列不会被挤到屏幕外,此列会自动收缩)的列的列索引,多个用“,”隔开  

        当LayoutRow里面的控件还没有布满布局时,shrinkColumns不起作用,设置了

        shrinkColumns布局完全没有改变,因为LayoutRow里面还剩足够的

        空间。当LayoutRow布满控件时,设置了shrinkColumns,则控件自动向垂直

        方向填充空间

你可能感兴趣的:(android,xml,Blog,单元测试,ITeye)