Android 布局类控件

本文详细介绍了Android中的六种布局控件:LinearLayout、TableLayout、GridLayout、FrameLayout、RelativeLayout、AbsoluteLayout,并解释了它们的特点及使用场景。同时介绍了部分Layout的gravity属性、TableLayout的列行为方式等高级特性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

Android提供6种布局类的控件:LinearLayout、TableLayout、GridLayout、FrameLayout、RalativeLayout、AbsoluteLayout

 

网上搜到一篇文章,写的比较全面。

http://blog.youkuaiyun.com/cctcc/article/details/9943587

 

补充:

1、部分Layout包含gravity属性(对应的XML属性android:gravity),可以使用setGravity方法来设置Layout内部组件的对齐方式。可以同时设置横向和纵向的对齐方式,中间用“|”间隔,但是“|”前后不能有空格。

2、LinearLayout不会换行,如果orientation为horizontal,想要显示5个控件,但是屏幕上只能显示4个控件,则第5个控件不会显示在屏幕上,因为LinearLayout不会自动换行。

3、TableLayout

  •   继承自LinearLayout,而且TableLayout的组成部分TableRow也是一个LinearLayout。
  •   如果直接向TableLayout中添加组件,这个组件将自己占有一行。
  •   TalbeLayout的列宽度由最宽的那个单元格确定。
  •   可以设置以下三种列行为方式,下面指定的列号从0开始:
      • Shrinkable:该列所有单元格可以被收缩,对应TableLayout.setColumnShrinkable(int,boolean);对应TableLayout的XML属性,android:shrinkColumns
      • Stretchable:该列所有单元格可以被拉伸,对应TableLayout.setColumnStretchable(int,boolean);对应TableLayou的XML属性,andriod:stretchColumns
      • Collapsed:该列所有单元格将会被隐藏,对应TableLayout.setColumnCollpased(int,boolean);对应TableLayout的XML属性,android:collpaseColumns

4、RelativeLayout

  可以通过setGravity设置内部各子组件的对齐方式

  setIgnoreGravity(int)设置某个组件不需要遵守gravity设置的对齐方式。

5、Android通常支持如下的距离单位

  px:像素,每个px对应屏幕上的一个点

  dip或dp(device independent pixels,设备独立像素):一种基于屏幕密度的抽象单位。在每英寸160点的显示器上,1dip=1px。但随着屏幕密度的抽象单位,dip和px的转换会发生改变。

  sp(scaled pixels,比例像素):主要处理字体大小,可以根据用户选择的字体大小进行缩放。

  in(英寸):标准长度单位。

  mm(毫米):标准长度单位。

  pt(磅):标准长度单位,1/72英寸。

  em :这是一个弹性的长度单位,它会继承父级容器的单位大小。显示的时候,大小为父级容器的大小乘以em对应的值。比如父级容器15px,该控件大小为0.5em,则大小为7.5px。

 

转载于:https://www.cnblogs.com/huanyou/p/5049108.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值