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`是一个关键属性,特别是在使用`LinearLayout`进行界面布局时。`layout_weight`用于指定一个子视图在父视图中的权重,它决定了控件如何分配额外的空间,尤其是在视图的尺寸...
### Android Layout样式布局详解 #### 一、概述 在Android应用开发中,界面设计是非常重要的一环,而界面设计的核心就是布局(Layout)。布局决定了应用界面的结构与外观,是用户体验好坏的重要因素之一。本文将...
- `layout_weight`:用于确定视图在容器中的相对大小,特别是在`LinearLayout`中,当设置了`layout_weight`时,如果`layout_width`或`layout_height`设置为`match_parent`,则会根据权重分配空间。 - `layout_...
- **权重分配**:在TableRow中,可以使用`android:layout_weight`属性为控件分配权重,决定控件占据的列宽比例。 4. **Spanned Cells(跨列):** - 通过设置`android:layout_span`属性,可以让一个控件跨越多列...
android:layout_weight="1" /> ``` TabWidget是显示标签的地方,而FrameLayout用于填充每个标签页对应的内容。`layout_weight=1`设置使得内容区域占据剩余空间,确保了内容区域在屏幕上的适配。 接着,我们来...
例如,如果设置了`android:layout_width="0dp"`,则可以通过`android:layout_weight`属性来分配宽度。 示例代码: ```xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:...
当一个`LinearLayout`包含多个子视图,并且这些子视图的宽度或高度设置了`android:layout_weight`时,系统会按照它们各自的权重来分配剩余的空间。这使得在不确定具体尺寸的情况下也能实现灵活的布局。 **2. 使用...
android:layout_weight="1"/> ``` 然后,在Java代码中实现SearchView的监听器: ```java import android.os.Bundle; import android.text.TextUtils; import android.widget.ArrayAdapter; import android....
### Android布局属性详解 在Android应用开发中,布局是用户界面设计的核心部分,它决定了控件的排列方式和外观效果。本篇文章将详细介绍Android中常用的布局属性及其应用场景,帮助开发者更好地掌握布局技巧。 ###...
总之,Android线性布局通过`android:orientation`、`android:layout_gravity`、`android:gravity`和`android:layout_weight`这四个关键参数,提供了灵活的视图布局方式。理解这些参数的含义和用法对于构建高效的用户...
### Android Layouts详解 在Android应用开发中,布局(Layout)是组织用户界面的重要组成部分,它决定了应用界面的外观和结构。布局管理器用于控制视图(View)和视图组(ViewGroup)如何被放置在屏幕上。通过合理...
### Android布局详解 #### 一、概述 在Android应用程序开发中,布局是构建用户界面的基础。良好的布局设计能够显著提升用户体验。本文将详细介绍Android中的五种常见布局:FrameLayout(框架布局)、LinearLayout...
- 例如,如果有三个 TextView 设置了 `android:layout_weight="1"`、`android:layout_weight="2"` 和 `android:layout_weight="3"`,则这三个 TextView 将按比例占据 LinearLayout 的宽度(或高度,取决于 ...
- 通过`android:layout_weight="1"`来让每个按钮均分宽度,实现底部菜单的平均分配。 #### 三、Activity设计概述 接下来,我们来看一下与各个界面逻辑相关的Java类文件。 ##### 3.1 AddNew.java `AddNew.java`...
- `android:layout_weight`:当子视图需要按比例分配空间时,权重属性非常有用。它允许子视图占据剩余空间的一部分。 - `android:layout_margin`:用于设置视图与其他视图或边界之间的距离,有上、下、左、右四个...
- `android:layout_weight`: 用于分配子控件在布局中的权重,按比例分配剩余空间。 - `android:singleLine`: 仅适用于TextView,当设为true时,文本显示为单行。 2. **表格布局 (TableLayout)**: - `android:...
android:layout_weight="5.5" android:id="@+id/statistics_forcast_numbers" android:gravity="center" android:text="12,15,2,4,6,9,14"/> android:layout_width="wrap_content" android:layout_height=...
如果希望选项卡位于屏幕底部,可以将其置于`<FrameLayout>`之下,并确保`<FrameLayout>`设置了`android:layout_weight="1"`以占据剩余空间。 `<FrameLayout>`组件则承载着每个选项卡对应的内容。它的id应设置为`@...
- **android:layout_weight**:当布局宽度设为`match_parent`时,此属性决定EditText占据多少剩余空间。 - **android:gravity**:设置文本内容的对齐方式。 - **android:hint**:设置提示文本,在用户未输入任何内容...