• Android 之布局(二)


    3、TableLayout(表格布局)

    像表格一样布局,通常情况下,TableLayout有多个TableRow组成,每个TableRow就是一行。

    <?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="fill_parent"
        android:shrinkColumns="2">
        <TableRow>
            <Button android:text="Button1"/>
            <Button android:text="Button2"/>
            <Button android:text="Button3"/>
        </TableRow>
        <TableRow>
            <Button android:text="Button4"/>
            <Button android:text="Button5"/>
            <Button android:text="Button6"/>
        </TableRow>
        <TableRow>
            <Button android:text="Button7"/>
            <Button android:text="Button8"/>
            <Button android:text="Button9"/>
        </TableRow>
    </TableLayout>
    

    总结:常用属性:

    [1]shrinkColumns属性:以0行为序,当TableRow里面的控件布满布局时,指定列自动延伸以填充可用部分;当TableRow里面的控件还没有布满布局时,shrinkColumns不起作用。(android:shrinkColumns="2",第3列布满时填充

    [2]strechColumns属性:以第0行为序,指定列对空白部分进行填充。(android:strechColumns="2",第3列填充)

    [3]collapseColumns属性:以0行为序,隐藏指定的列.。(android:strechColumns="2",隐藏第3列)

    [4]layout_column属性:以0行为序,设置组件显示指定列。(android:layout_column="2",显示在第三列

    [5]layout_span属性:以第0行为序,设置组件显示占用的列数。(android:layout_span="3",占用3列

    4、AbsoluteLayout(绝对布局)

            组件的位置可以准确的指定其在屏幕的x/y坐标位置。虽然可以精确的去规定坐标,但是由于代码的书写过于刚硬,使得在不同的设备,不同分辨率的手机移动设备上不能很好的显示应有的效果,所以此布局不怎么被推荐使用。

    <?xml version="1.0" encoding="utf-8"?>
    <AbsoluteLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
        <Button 
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:text="Button1"
            android:layout_x="100dp"
            />
        <Button 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="Button2"
            android:layout_y="100dp"
            />
        
    </AbsoluteLayout>
    

    5、FrameLayout(单帧布局)

          据说是五种布局中最简单的一种,因为单帧布局在新定义组件的时候都会将组件放置屏幕的左上角,即使在此布局中定义多个组件,后一个组件总会将前一个组件所覆盖,除非最后一个组件是透明的。

    <?xml version="1.0" encoding="utf-8"?>
    <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >
        <Button 
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:text="Button1"
            />
        <Button 
            android:layout_width="wrap_content"
            android:layout_height="fill_parent"
            android:text="Button2"
            />
        <Button 
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button3"
            />
        
    </FrameLayout>
    
  • 相关阅读:
    【转载】RocketMQ与Kafka对比(18项差异)
    canal —— 阿里巴巴mysql数据库binlog的增量订阅&消费组件
    CodingTMD’s Reading List
    [LeetCode] Evaluate Reverse Polish Notation, Solution
    [LeetCode] Clone Graph, Solution
    [LeetCode] Sort List, Solution
    [LeetCode] Max Points on a Line, Solution
    [LeetCode] LRU Cache, Solution
    [LeetCode] Binary Tree Preorder Traversal, Solution
    [LeetCode] Reorder List, Solution
  • 原文地址:https://www.cnblogs.com/xinaixia/p/4094994.html
Copyright © 2020-2023  润新知