Android核心基础——S02E03_布局演示和android下单位

来源:互联网 发布:阿里云 个人 编辑:程序博客网 时间:2024/05/20 10:13

AbsoluteLayout绝对布局/FrameLayout帧布局

AbsoluteLayout

android:layout_x  指定控件在父布局的x轴坐标

android:layout_y  指定控件在父布局的y轴坐标

FrameLayout

帧布局每次添加的控件都显示在最上面,最后显示在界面上的是最后添加的一个控件

*绝对布局


用处:植物大战僵尸,豌豆荚的子弹移动。

*FramLayout

如:播放器的暂停、前进、后退等。







*TableLayout表格布局

android:shrinkColumns  收缩列

android:stretchColumns  拉伸列

android:collapseColumns  隐藏列

android:layout_column  定列(作用在列的身上)

android:layout_span  合并列(作用在列的身上)

TableRow单元行里的单元格的宽度小于默认的宽度时就不起作用,其默认是fill_parent,高度可以自定义大小    




--------------------

收缩列:







*Android下的单位


lpx (pixels)像素

     一般HVGA代表320x480像素,这个用的比较多。

ldipdp(device independent pixels)设备独立像素

    这个和设备硬件有关,一般为了支持WVGAHVGAQVGA推荐使用这个,不依赖像素。

lsp(scaled pixels — best for text size)比例像素

    主要处理字体的大小,可以根据用户系统的字体自适应。

除了上面三个显示单位,下面还有几个不太常用:

lin(inches)英寸
lmm(millimeters)毫米 
lpt(points)点,1/72英寸
l

为了适应不同分辨率,不同的像素密度,推荐使用dip,文字使用sp


常见的密度比值:

  240*320的密度比值是: 0.75

  320*480的密度比值是: 1.0

  480*800的密度比值是: 1.5

float density = getResources().getDisplayMetrics().density;

1.0 * 160dp =160px

0.75* 160dp = 120px

1.5 *160dp = 240px



0 0