`
foryougeljh
  • 浏览: 116480 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

android布局及常见布局属性

 
阅读更多
android布局方式
Android对用五大布局对象
FrameLayout LinearLayout RelativeLayout TableLayout AbsoluteLayout

FrameLayout
FrameLayout是最简单的一个布局对象。
它被定制为你屏幕上的一个空白备用区域,之后你可以在其中填充一个单一对象
比如,一张你要发布的图片。所有的子元素将会固定在屏幕的左上角
后一个子元素将会直接在前一个子元素之上进行覆盖填充,把它们部份或全部挡住(除非后一个子元素是透明的)。

LinearLayout
LinearLayout以你为它设置的垂直或水平的属性值,来排列所有的子元素。
所有的子元素都被堆放在其它元素之后,因此一个垂直列表的每一行只会有一个元素,而不管他们有多宽,
而一个水平列表将会只有一个行高.
LinearLayout还支持为单独的子元素指定weight 。好处就是允许子元素可以填充屏幕上的剩余空间。这也避免了在一个大屏幕中,一串小对象挤成一堆的情况,而是允许他们放大填充空白。
子元素指定一个 weight 值,剩余的空间就会按这些子元素指定的weight 比例分配给这些子元素。默认的 weight 值为0。例如,如果有三个文本框,其中两个指定了weight 值为1,那么,这两个文本框将等比例地放大,并填满剩余的空间,而第三个文本框不会放大。

RelativeLayout
RelativeLayout 允许子元素指定他们相对于其它元素或父元素的位置(通过ID 指定)。
因此,你可以以右对齐,或上下,或置于屏幕中央的形式来 排列两个元素。

TableLayout
TableLayout 将子元素的位置分配到行或列中。
一个TableLayout由许多的TableRow 组成,每个TableRow 都会定义一个 row
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:stretchColumns="1">

<TableRow>
<TextView android:text="用户名:" android:textStyle="bold"
android:gravity="right" android:padding="3dip" />

<EditText android:id="@+id/username" android:padding="3dip"
android:scrollHorizontally="true" />
</TableRow>

<TableRow>
<TextView android:text="登录密码:" android:textStyle="bold"
android:gravity="right" android:padding="3dip" />

<EditText android:id="@+id/password" android:password="true"
android:padding="3dip" android:scrollHorizontally="true" />
</TableRow>

<TableRow android:gravity="right">

<Button android:id="@+id/cancel"
android:text="取消" />

<Button android:id="@+id/login"
android:text="登录" android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</TableRow>
</TableLayout>

AbsoluteLayout
让子元素指定准确的x/y坐标值

android布局属性
android:background布局的背景
android:layout_marginTop距上一个布局的间隔距离
android:gravity布局中文字的位置,如:居中
android:layout_gravity整个布局的位置,如垂直居中等
android:layout_alignParentTop布局的位置是否处于顶部,同时还有左、右、底部
android:text需要显示文字的布局中要显示的文字,如TextView、Button
android:layout_alignTop="@id/ok"设置此组件和ID为OK的组件的高度齐平

LinearLayout有两个非常相似的属性:android:gravity与 android:layout_gravity。
android:gravity属性是对该view内容的限定.
比如一个button 上面的text.你可以设置该text在view的靠左,靠右等位置.
以button为例,android:gravity="right"则button上面的文字靠右

android:layout_gravity是用来设置该view相对与起父view 的位置比如一个button 在linearlayout里,你想把该button放在靠左、靠右等位置就可以通过该属性设置.以button为例,android:layout_gravity="right"则button靠右

第一类:属性值为true或false
android:layout_centerHrizontal 水平居中
android:layout_centerVertical 垂直居中
android:layout_centerInparent 相对于父元素完全居中
android:layout_alignParentBottom 贴紧父元素的下边缘
android:layout_alignParentLeft 贴紧父元素的左边缘
android:layout_alignParentRight 贴紧父元素的右边缘
android:layout_alignParentTop 贴紧父元素的上边缘
android:layout_alignWithParentIfMissing 如果对应的兄弟元素找不到的话就以父元素做参照物

第二类:属性值必须为id的引用名"@id/id-name"
android:layout_below 在某元素的下方
android:layout_above 在某元素的的上方
android:layout_toLeftOf 在某元素的左边
android:layout_toRightOf 在某元素的右边

android:layout_alignTop 本元素的上边缘和某元素的的上边缘对齐
android:layout_alignLeft 本元素的左边缘和某元素的的左边缘对齐
android:layout_alignBottom 本元素的下边缘和某元素的的下边缘对齐
android:layout_alignRight 本元素的右边缘和某元素的的右边缘对齐

第三类:属性值为具体的像素值,如30dip,40px
android:layout_marginBottom 离某元素底边缘的距离
android:layout_marginLeft 离某元素左边缘的距离
android:layout_marginRight 离某元素右边缘的距离
android:layout_marginTop 离某元素上边缘的距离

android:scaleType:
android:scaleType是控制图片如何resized/moved来匹对ImageView的size。ImageView.ScaleType / android:scaleType值的意义区别:
center 按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示
centerCrop 按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽)
centerInside 将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽
fitCenter 把图片按比例扩大/缩小到View的宽度,居中显示
fitEnd 把图片按比例扩大/缩小到View的宽度,显示在View的下部分位置
fitStart 把图片按比例扩大/缩小到View的宽度,显示在View的上部分位置
fitXY 把图片不按比例 扩大/缩小到View的大小显示
matrix 用矩阵来绘制,动态缩小放大图片来显示。

分享到:
评论

相关推荐

    android布局属性大全(总结)

    以上是关于Android布局属性的一些常见知识点,通过合理地组合这些属性,可以创建出更加复杂和美观的用户界面。希望本文档能够帮助您在实际开发过程中更好地利用这些属性,提高您的开发效率和应用质量。

    android布局属性帮助

    本文详细介绍了Android布局中的两种常见布局方式——相对布局(RelativeLayout)和表格布局(TableLayout)的相关属性。通过理解和应用这些属性,初学者可以更好地设计和实现符合需求的用户界面。无论是简单的应用...

    Android布局大全(包含常见属性)

    ### Android布局大全(包含常见属性) #### 一、AbsoluteLayout(坐标布局) **定义与特点:** AbsoluteLayout,即绝对布局或坐标布局,是Android早期支持的一种布局方式,它允许开发者通过指定X轴和Y轴上的坐标来...

    Android 相对布局实例

    在Android开发中,布局管理器是构建用户界面的关键部分,其中相对布局(RelativeLayout)是一种常见的布局方式。相对布局允许我们根据各个视图之间的相对位置来安排它们,这为设计复杂且灵活的用户界面提供了可能。...

    android布局管理器代码

    本文将深入探讨Android中的常见布局管理器,尤其是基于XML的布局,以及如何在Activity中操作它们。 1. **线性布局(LinearLayout)** 线性布局是最基础的布局,它按照垂直或水平方向将子视图堆叠在一起。`android:...

    Android页面布局总结

    本文将详细介绍Android中三种常见的布局方式:LinearLayout(线性布局)、RelativeLayout(相对布局)以及TableLayout(表格布局),并深入探讨它们的特点和应用场景。 #### 1. LinearLayout(线性布局) 线性布局...

    android常见的布局

    以下是关于Android中常见布局的详细说明: 1. **线性布局(LinearLayout)** 线性布局是最基础的布局类型,按照垂直或水平方向将子视图逐一排列。它可以设置`android:orientation`属性来切换方向,值可以是`...

    Android 显示/隐藏 布局

    在Android开发中,布局管理是应用界面设计...这些方法提供了一种更为动态和灵活的方式来控制Android布局的可见性,使得应用的交互更加丰富和有趣。在实际开发中,应根据应用场景选择合适的方法,以实现最佳的用户体验。

    android界面布局详解

    ViewGroup则是布局的基类,它是一个不可见的容器,用于容纳其他View或ViewGroup,并定义它们的布局属性。视图层次结构就像一棵树,根节点通常是一个布局(ViewGroup),其余节点是各种View对象。当Activity启动时,...

    Android七种布局解析

    Android 中有七种常见的布局方式,即线性布局(Linear Layout)、相对布局(Relative Layout)、表格布局(Table Layout)、网格视图(Grid View)、标签布局(Tab Layout)、列表视图(List View)和绝对布局...

    Android布局文件的属性值解析

    本文将详细介绍一些常用的布局属性及其应用场景。 #### android:id `android:id` 属性用于指定一个视图(View)的唯一标识符,它是通过R类自动生成的。开发者可以通过此ID在代码中引用该视图,并对其进行操作或...

    Android开发 - 布局

    常见布局类型 #### 2.1 FrameLayout FrameLayout是最基础的布局,允许一个子视图占据整个屏幕。子视图的位置可以通过`android:layout_gravity`属性调整。 #### 2.2 LinearLayout LinearLayout沿垂直或水平方向...

    Android_布局属性大(1).zip

    本资料"Android_布局属性大(1).zip"主要聚焦于Android布局的各种属性,帮助开发者深入理解并灵活运用这些属性来创建高效、美观且响应式的用户界面。 一、布局类型 1. 布局容器:Android提供了多种布局容器,如...

    Android布局控件之RelativeLayout详解

    ### Android布局控件之RelativeLayout详解 #### 一、概述 在Android开发中,布局是非常重要的一环,良好的布局设计能够使界面美观且适应各种屏幕尺寸。`RelativeLayout`作为Android提供的几种基本布局之一,通过...

    android常用布局的使用

    本文将深入探讨Android中常见的几种布局及其使用方法,以帮助开发者更好地构建美观且功能丰富的应用程序。 一、线性布局(LinearLayout) 线性布局是最基础的布局类型,它按照垂直或水平方向将子视图排列。通过设置...

    android界面布局

    本文将深入探讨几种常见的Android布局方式:LinearLayout、RelativeLayout、TableLayout、AbsoluteLayout以及FrameLayout。 1. **LinearLayout(线性布局)**: 线性布局是最基础的布局方式,分为水平和垂直两种...

    xamarin.android 布局文件自动提示功能

    "Xamarin.Android布局文件自动提示功能"是指在使用Visual Studio或Visual Studio for Mac等集成开发环境(IDE)时,编辑器提供的智能代码补全和提示功能,它能显著提高开发效率,减少错误。本文将深入探讨这个功能,并...

    Android 五大布局方式详解

    Android中常用的5大布局方式有以下几种:...线性布局是Android开发中最常见的一种布局方式,它是按照垂直或者水平方向来布局,通过“android:orientation”属性可以设置线性布局的方向。属性值有垂直(vertical)和水平

    Android布局属性大全[文].pdf

    本文将详细解释Android布局中的常见属性,帮助开发者更好地理解和运用这些属性来优化UI设计。 首先,我们来看第一类属性,它们的值为`true`或`false`,主要用于对齐和居中: 1. `android:layout_centerHorizontal`...

    安卓界面布局工具(layout布局)

    描述中提到的工具可能是像DroidDraw这样的应用程序,它是一个早期的图形化用户界面(GUI)工具,可以帮助开发者无需编写XML代码就能设计Android布局。DroidDrawr1b21.jar可能就是这个工具的一个版本,允许用户通过...

Global site tag (gtag.js) - Google Analytics