2D01-View-Layout-Table-Layout

android:layout_column="1" 控制Table View在第几列:

 <TextView
            android:layout_column="1"
            android:text="@string/table_layout_6_open"
            android:padding="3dip" />

android:stretchColumns="1 控制第几列被拉长

代码设置

table.setColumnStretchable(int column, boolean );

<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:stretchColumns="1">

android:collapseColumns 设置要隐藏的列。

或者代码中设置 table.setColumnCollapsed(0, boolean);

获取是否隐藏

boolean= table.isColumnCollapsed( int column);

<span style="font-size:12px;"><TableLayout
        android:id="@+id/menu"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:stretchColumns="1"
        android:collapseColumns="2"></span>

设置是否能换行

table.setColumnShrinkable(0, mShrink);

void android.widget.TableLayout.setColumnShrinkable(int columnIndex, boolean isShrinkable)

public void setColumnShrinkable (int columnIndex, boolean isShrinkable)

Added in API level 1

Makes the given column shrinkable or not. When a row is too wide, the table can reclaim extra space from shrinkable columns

Calling this method requests a layout operation.

Related XML Attributes

android:shrinkColumns

Parameters

columnIndex the index of the column

isShrinkable true if the column must be shrinkable, false otherwise. Default is false.

设置tableitem占两列

android:layout_span="2"

代码设置

View tabChildView = new View(this); //比如这个view是你放在TableLayout中的

LayoutParams lp = tabChildView.getLayoutParams(); //先得到这个view原先的布局参数

//构造一个TableRow.LayoutParams,它是子类,把lp传进去这样之前的布局参数就在该子类中了

TableRow.LayoutParams tlp = new TableRow.LayoutParams搜索(lp);

tlp.span = 3;//TableRow.LayoutParams可以设置这个属性

tabChildView.setLayoutParams(tlp); //别忘了把参数设置回去

2D01-View-Layout-Table-Layout,布布扣,bubuko.com

时间: 2024-10-03 03:01:41

2D01-View-Layout-Table-Layout的相关文章

Android View框架的layout机制

概述 Android中View框架的工作机制中,主要有三个过程: 1.View树的测量(measure) Android View框架的measure机制 2.View树的布局(layout)Android View框架的layout机制 3.View树的绘制(draw)Android View框架的draw机制 View框架的工作流程为:测量每个View大小(measure)-->把每个View放置到相应的位置(layout)-->绘制每个View(draw).          本文主要讲

Yii学习笔记:关闭layout,让layout见鬼去

Yii框架默认渲染模板的时候会渲染布局,新创建的项目也包含了3个默认的布局:main.php column1.php column2.php,并且默认创建了一个公共控制器 Controller.php(在components目录下),默认的SiteController.php是继承的这个Controller.php,这个控制器指定了布局文件为column1.php. 让我们看看渲染一个模板需要经过哪些步骤: 1.控制器中通过 $this->render('index'); 来开始渲染index.

View VS Table(转)

区别 1.视图是已经编译好的sql语句:而表不是. 2.视图没有实际的物理记录:而表有. 3.视图是窗口:表是内容 4.标致用物理空间而视图不占用物理空间,视图只是逻辑概念的存在:表可以即使对它修改,但视图只能有创建的语句来修改. 5.表示内模式,视图是外模式. 6.视图是产看数据表的一种方法,可以查询数据表中某些字段构成的数据,只是一些sql语句的集合.从安全的角度来说,视图可以不给用户接触数据表,从而不知道表结构. 7.表属于全局模式中的表,是实表:视图属于局部模式的表,是虚表. 8.视图的

View工作原理(四)view的layout过程

转载请说明出处:http://blog.csdn.net/ff20081528/article/details/17784911刚过完自己的本命年,新的一年希望自己有个新的开始,祝自己在新的一年里一帆风顺,同时也祝广大的朋友们新年新气象,收获多多! 一.android中view的layout过程总概 Layout过程其实就是父视图按照子视图的大小及布局参数将子视图放在窗口的合适的位置上. 视图的布局过程是从ViewRoot对象调调用根视图的layout()方法开始,接着layout()方法调用根

源码解析Android中View的layout布局过程

Android中的Veiw从内存中到呈现在UI界面上需要依次经历三个阶段:量算 -> 布局 -> 绘图,关于View的量算.布局.绘图的总体机制可参见博文 < Android中View的布局及绘图机制>.量算是布局的基础,如果想了解量算的细节,可参见博文<源码解析Android中View的measure量算过程>.本文将从源码角度解析View的布局layout过程,本文会详细介绍View布局过程中的关键方法,并对源码加上了注释以进行说明. 对View进行布局的目的是计算

[Android FrameWork 6.0源码学习] View的重绘过程之Layout

View绘制的三部曲,测量,布局,绘画现在我们分析布局部分测量部分在上篇文章中已经分析过了.不了解的可以去我的博客里找一下 View的布局和测量一样,都是从ViewRootImpl中发起,ViewRootImpl先通过measure来初始化整个的view树之后会调用onLayout方法来布局,ViewRootImpl是通过performLayout函数来发起重绘的比较重要的部分我会写注释,注意看注释就行 private void performLayout(WindowManager.Layou

View的工作原理(二)——layout

1.当View的measure被确定后,会调用ViewGroup的layout方法,之后使用onLayout方法(同样也是系统未自动重写,要我们自己完成)遍历子View(根Measure的形式是一样得)与Measure不同的时候,允许重写layout()方法. 分析layout源码:(P194 ①) 原理:通过setFrame方法设定View的四个顶点的位置,接着调用onLayout方法确定子元素的位置. 以LinearLayout的onLayout方法(Vertial):遍历子元素的layou

从源码角度分析view的layout过程

上两篇文章主要讲述了view的measure过程,主要分析了xml文件中控件的height和width设置成不同值的时候,经过测量之后,如何计算出控件的真实高度.所以也就验证了我们经常所说的measure过程就是把match_parent等值转化成在具体设备上的具体的值. 本文主要分析一下layout的过程,同样我们以LinearLayout的layout过程为例. 在ViewRoot的performTraversals方法中首先是measure过程,然后接着是layout,layout开始也是

Android-自定义View前传-View的三大流程-Layout

Android-自定义View前传-View的三大流程-Layout 参考 <Android开发艺术探索> https://github.com/hongyangAndroid/FlowLayout 写在前头 在之前的文章中 , 我们学习了Android View的 Measure的流程, 本篇文章来学习一下View的 Layout 的过程. 学完了这一篇文章后,我们可以尝试自己去自定义一个自己的Layout. Overview 我对于Layout过程的理解:Layout的过程就是给Child

Auto Layout Guide----(三)-----Anatomy of a Constraint

Anatomy of a Constraint 剖析约束 The layout of your view hierarchy is defined as a series of linear equations. Each constraint represents a single equation. Your goal is to declare a series of equations that has one and only one possible solution. A samp