`

android:layout_weight详解

 
阅读更多
1、LinearLayout可以为其包含控件指定填充权值layout_weight。 这样就允许其包含的控件可以填充屏幕上的剩余空间。这也避免了所有控件挤成一堆的情况,而是允许他们放大填充所有空白。剩余的空间会按这些控件指定的权值比例分配屏幕。

                
2、默认情况下,weight的值是0,表示按照控件的实际大小显示;如果weight设置高于零。

                
3、剩余空间会按照该控件的weight值占所有控件weight的比例分配给该控件。 比如有两个控件,一个weight为1,另外一个是2. 则剩余空间会把1/(1+2)的部分给控件一,另外2/(1+2)的分配给控件二。也就是权值越大,重要度越大。

                  
4、如果LinearLayout包含子LinearLayout,子LinearLayout之间的权值越大的,重要度则越小。如果有LinearLayout A包含LinearLayout C,D,C的权值为2,D的权值为1,则屏幕的2/3空间分给权值为1的D,1/3分给权值为2的C。在LinearLayout嵌套的情况下,子LinearLayout必须要设置权值,否则默认的情况是未设置权值的子LinearLayout占据整个屏幕。

  

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:layout_weight="2">
        <SurfaceView
            android:id="@+id/surfaceView"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent" />
    </LinearLayout>
    <LinearLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_weight="1"
        android:layout_gravity="center">
        <Button android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:id="@+id/btnTakePicture"
            android:gravity="center"
            android:textSize="20px"
            android:text="拍照"/>
    </LinearLayout>
 
</LinearLayout>

 转载:

http://blog.csdn.net/feilong1105/article/details/7546151

 

分享到:
评论

相关推荐

    Android中的android:layout_weight使用详解

    在Android开发中,`android:layout_weight`是一个关键属性,特别是在使用`LinearLayout`进行界面布局时。`layout_weight`用于指定一个子视图在父视图中的权重,它决定了控件如何分配额外的空间,尤其是在视图的尺寸...

    Android Layout样式布局

    ### Android Layout样式布局详解 #### 一、概述 在Android应用开发中,界面设计是非常重要的一环,而界面设计的核心就是布局(Layout)。布局决定了应用界面的结构与外观,是用户体验好坏的重要因素之一。本文将...

    Android 控件说明

    - `layout_weight`:用于确定视图在容器中的相对大小,特别是在`LinearLayout`中,当设置了`layout_weight`时,如果`layout_width`或`layout_height`设置为`match_parent`,则会根据权重分配空间。 - `layout_...

    Layout_table android网格布局

    - **权重分配**:在TableRow中,可以使用`android:layout_weight`属性为控件分配权重,决定控件占据的列宽比例。 4. **Spanned Cells(跨列):** - 通过设置`android:layout_span`属性,可以让一个控件跨越多列...

    Android TabHost组件使用方法详解

    android:layout_weight="1" /&gt; ``` TabWidget是显示标签的地方,而FrameLayout用于填充每个标签页对应的内容。`layout_weight=1`设置使得内容区域占据剩余空间,确保了内容区域在屏幕上的适配。 接着,我们来...

    Android六大布局详解

    例如,如果设置了`android:layout_width="0dp"`,则可以通过`android:layout_weight`属性来分配宽度。 示例代码: ```xml &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:...

    weight属性详解

    当一个`LinearLayout`包含多个子视图,并且这些子视图的宽度或高度设置了`android:layout_weight`时,系统会按照它们各自的权重来分配剩余的空间。这使得在不确定具体尺寸的情况下也能实现灵活的布局。 **2. 使用...

    Android搜索框(SearchView)的功能和用法详解

    android:layout_weight="1"/&gt; ``` 然后,在Java代码中实现SearchView的监听器: ```java import android.os.Bundle; import android.text.TextUtils; import android.widget.ArrayAdapter; import android....

    android布局属性详解

    ### Android布局属性详解 在Android应用开发中,布局是用户界面设计的核心部分,它决定了控件的排列方式和外观效果。本篇文章将详细介绍Android中常用的布局属性及其应用场景,帮助开发者更好地掌握布局技巧。 ###...

    android线性布局详解.doc

    总之,Android线性布局通过`android:orientation`、`android:layout_gravity`、`android:gravity`和`android:layout_weight`这四个关键参数,提供了灵活的视图布局方式。理解这些参数的含义和用法对于构建高效的用户...

    Android-Layouts

    ### Android Layouts详解 在Android应用开发中,布局(Layout)是组织用户界面的重要组成部分,它决定了应用界面的外观和结构。布局管理器用于控制视图(View)和视图组(ViewGroup)如何被放置在屏幕上。通过合理...

    Android布局详解

    ### Android布局详解 #### 一、概述 在Android应用程序开发中,布局是构建用户界面的基础。良好的布局设计能够显著提升用户体验。本文将详细介绍Android中的五种常见布局:FrameLayout(框架布局)、LinearLayout...

    android studio 基本控件

    - 例如,如果有三个 TextView 设置了 `android:layout_weight="1"`、`android:layout_weight="2"` 和 `android:layout_weight="3"`,则这三个 TextView 将按比例占据 LinearLayout 的宽度(或高度,取决于 ...

    Android 相对布局实例

    - `android:layout_weight`:当子视图需要按比例分配空间时,权重属性非常有用。它允许子视图占据剩余空间的一部分。 - `android:layout_margin`:用于设置视图与其他视图或边界之间的距离,有上、下、左、右四个...

    android部分控件详解

    - `android:layout_weight`: 用于分配子控件在布局中的权重,按比例分配剩余空间。 - `android:singleLine`: 仅适用于TextView,当设为true时,文本显示为单行。 2. **表格布局 (TableLayout)**: - `android:...

    详解Android应用中使用TabHost组件进行布局的基本方法

    如果希望选项卡位于屏幕底部,可以将其置于`&lt;FrameLayout&gt;`之下,并确保`&lt;FrameLayout&gt;`设置了`android:layout_weight="1"`以占据剩余空间。 `&lt;FrameLayout&gt;`组件则承载着每个选项卡对应的内容。它的id应设置为`@...

    Android建议登陆界面代码

    - **android:layout_weight**:当布局宽度设为`match_parent`时,此属性决定EditText占据多少剩余空间。 - **android:gravity**:设置文本内容的对齐方式。 - **android:hint**:设置提示文本,在用户未输入任何内容...

    认识Android布局文件

    【Android布局文件详解】 在Android应用开发中,界面设计是一个至关重要的环节,而XML格式的布局文件正是构建这些界面的核心工具。布局文件定义了应用程序界面的结构,包括它所包含的控件、控件间的相对位置以及...

Global site tag (gtag.js) - Google Analytics