Android布局管理器(线性布局)

线性布局有LinearLayout类来代表,Android的线性布局和Swing的Box有点相似(他们都会将容器里面的组件一个接一个的排列起来),LinearLayout中,使用android:orientation属性控制布局是水平还是竖直布局(vertical水平,horizontal竖直)


XML属性


相关方法


说明


android:baselineAligned


setBaselineAligned(boolean)


该属性设置为false,将会阻止该布局管理器与它的子元素的基线对其


android:divider


setDividerDrawable(Drawable)


垂直布局两个分按钮之间的分割条


android:gravity


setGravity(int)


设置布局管理器内,组件的对齐方式,属性支持:top,left,right,center_vertical,fill_vertical等


android:measureWithLargestChild


setMeasureWithLargestChildEnabled(boolean)


当该属性设置为true时候,所有带权重的子元素,都会具有最大子元素的最小尺寸


android:orientation


setOrientation(int)


设置布局管理器内,组件的对齐方式,horizontal:水平排列,vertical:垂直排列

LinearLayout子元素常用的XML属性


XML属性


相关方法


说明


Android:layout_gravity


指定该子元素在LinearLayout中的对齐方式


Android:layout_weight


指定该子元素在LinearLayout中所占的权重

属性具体效果:

  1. android:baselineAligned属性

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:baselineAligned="false"
        android:orientation="horizontal"
        tools:context="com.example.layouttest.MainActivity" >
    
        <TextView
            android:id="@+id/t1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第一个Text"/>
    
        <Button
            android:id="@+id/btn1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第一个Bton"/>
    
        <TextView
            android:id="@+id/t2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第二个Text"/>
    </LinearLayout>

  2. android:gravity属性

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:gravity="right"
        tools:context="com.example.layouttest.MainActivity" >
    
        <TextView
            android:id="@+id/t1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第一个Text"/>
    
        <Button
            android:id="@+id/btn1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第一个Bton"/>
    
        <TextView
            android:id="@+id/t2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="第二个Text"/>
    </LinearLayout>

时间: 2024-08-13 21:54:19

Android布局管理器(线性布局)的相关文章

Android学习系列(二)布局管理器之线性布局及其自定义实现

转载请注明出处:http://blog.csdn.net/lhy_ycu/article/details/39643669 LinearLayout是Android控件中的线性布局控件,它包含的子控件将以横向(HORIZONTAL)或竖向(VERTICAL)的方式排列,按照相对位置来排列所有的子控件及引用的布局容器.超过边界时,某些控件将缺失或消失.因此一个垂直列表的每一行只会有一个控件或者是引用的布局容器. 一.LinearLayout线性布局的相关属性说明: android:orientat

android的布局管理器

理论上通过setContentView(view)能够把一个view设置到activity中,但当你有很多个view控件的时候,就需要用android的布局管理器来管理view控件了. android布局管理器有以下几种: 1.线性布局 LinearLayout 2.框架布局 FrameLayout 3.表格布局 TableLayout 4.相对布局 RelativeLayout 5.绝对布局 AbsoluteLayout 一.LinearLayout 线性布局管理器 线性布局分为水平布局和垂直

布局管理器(章节摘要)

1,使用布局管理器可以对组件的布局进行管理,在Android中提供了4种布局管理器:LinearLayout,FrameLayout,TableLayout和RelativeLayout. 2,所有的布局管理器既可以通过配置文件实现,也可以通过Activity程序动态生成. 3,表格布局管理器可以以表格的形式对数据显示进行排列,在列表操作中使用较多. 4,布局管理器可以通过嵌套实现更加复杂的布局显示. 5,在Android 2.3.3之后不再支持绝对布局管理器.布局管理器(章节摘要)

QT开发(二十一)——QT布局管理器

QT开发(二十一)--QT布局管理器 一.布局管理器简介 QT中使用绝对定位的布局方式无法自适应窗口的变化. QT中提供了对界面组件进行布局管理的类,用于对界面组件进行管理,能够自动排列窗口中的界面组件,窗口大小变化后自动更新界面组件的大小. QLayout是QT中布局管理器的抽象基类,通过对QLayout的继承,实现了功能各异且互补的布局管理器. 布局管理器不是界面组件,而是界面组件的定位策略. 任意容器类型的组件都可以指定布局管理器. 同一个布局管理器管理中的组件拥有相同的父组件,在设置布局

Java之GUI编程(二)——布局管理器

在上篇博客Java之GUI编程(一)中我已经对GUI编程的组件和事件做了简单介绍了,现在来看看另外一部分关于组件在各个平台是如何做到仍能保持自己合理的位置大小以及外观的. 已经说了Java是跨平台运行的,但是不同的平台对于点及坐标的定义不完全相同.而且屏幕的解析度分辨率不同也会造成位置的变化,为了确保每个组件的相对位置和大小以及外观,java就设计了布局管理器. 布局管理器是对容器中的元素进行管理,按照一定的规则排放容器里面的元素.它控制了组件的摆放. 布局管理器分类: FlowLayout:浮

Java FlowLayout、BorderLayout、GridLayout、GridBagLayout、CardLayout布局管理器

作者:卿笃军 原文地址:http://blog.csdn.net/qingdujun/article/details/40985027 一.FlowLayout布局管理器 FlowLayout() 构造一个新的 FlowLayout,它是居中对齐的,默认的水平和垂直间隙是 5 个单位. FlowLayout(int align) 构造一个新的 FlowLayout,它具有指定的对齐方式,默认的水平和垂直间隙是 5 个单位. FlowLayout(int align, int hgap, int

JavaSE学习55:GUI编程之布局管理器

一布局管理器概述 Java语言中,提供了布局管理器类的对象可以管理. 管理Component对象在Container对象中的布局,不必直接设置Component对象位置和大小.每个Container对象 都有一个布局管理器对象,当容器需要对某个组件进行特定或判断其大小尺寸时,就会调用其对应的布局管理器,调 用Container对象的setLayout()方法改变其布局管理器对象. AWT提供了5种布局管理器,分别为: FlowLayout布局管理器 BorderLayout布局管理器 GridL

swing布局管理器简介

转载:http://stevencjh.blog.163.com/blog/static/1218614612010101775336729/ swing布局管理器简介 一 .BorderLayout布局管理器:BorderLayout 也是一种非常简单的布局策略,它把容器内的空间简单地划分为东.西.南.北.中无个区域,没加入一个组件都应该指明把这个组件加在哪个区域中. BorderLayout是顶层容器( JFrame, JDialog, 和 JApplet )的默认布局管理器.有五个位置组件

Qt布局管理器(详解)

1.存在的问题 (1)目前的GUI开发方式:绝对定位 --直接在像素级指定各个组件的位置和大小 void QWidget::move(int x, int y) void QWidget::resize(int w, int h) (2)问题 --组件位置和大小无法自适应父窗口的变化 2.布局管理器 (1)解决方案:布局管理器 --提供相关的类对界面组件进行布局管理 @1:能够自动排列窗口中的界面组件 @2:窗口变化后自动更新界面组件的大小 (2)QLayout是Qt中布局管理器的抽象基类 (3

10.4 使用布局管理器3(CardLayout)

3)CardLayout布局管理器 CardLayout布局管理器以时间而非空间来管理它里面的组件,它将加入容器的所有组件看成一叠卡片,每次只要最上面的那个Component才可见.就好像一副扑克牌,它们叠在一起,每次只有最上面的一张扑克牌可见. CardLayout提供了如下两个构造器: 1)CardLayout():创建默认的CardLayout布局管理器. 2)CardLayout(int hgap,int vgap):通过指定卡片与容器左右边界的间距(hgap).上下边界(vgap)的间