1.帧布局 FrameLayout:

FrameLayout是最简单的布局对象。在它里面的的所有显示对象都将固定在屏幕的左上角,不能指定位置,后一个会直接覆盖在前一个之上显示

  因为上面的一段话这个是在我初学的时候写的,描述的很不清楚。帧布局其实是一个非常好用的布局,他可以充当一个其他布局的的容器,单独加载到界面的某一块位置,并创建新的两个类**Fragment和**Activity继承Fragment和FragmentActivity,我们可以在Activity将布局中的定义为fragmentLayout的组件托管给fragment类

2.线性布局 LinearLayout:

LinearLayout是最常用的布局之一,也是RadioGroup, TabWidget, TableLayout, TableRow, ZoomControls类的父类,它里面所有显示的对象都以垂直或水平 的方式排列(通过设置LinearLayout的Orentation属性来设置排列方式),可以通过多个LinearLayout层级结构实现各种线性有序的布局。

  这里举个下图的例子,看下图ABC....JH的组件来实现下列的布局排列。1是一个水平的线性布局,包含2和3两个线性布局组件,(1的水平属性是表示1中的组件2和3是水平一个个排列的)3里面的 ABCDE组件是垂直摆放,所以2是一个垂直线性布局,2布局里的组件有4,5,6垂直摆放,那么2也是一个垂直线性布局,4线性布局中的组件FG是水平排列,4是一个水平属性的线性布局,6中要放的组件是7,8水平排列,8中要放JH垂直线性布局。

3.相对布局 RelativeLayout:

RelativeLayout 允许子元素指定它们相对于其父元素或兄弟元素的位置,是实际布局中最常用的布局方式之一。它灵活性大、属性也多,操作难度比较大,属性之间产生冲突的的可能性也大,使用相对布局时需要多做测试。

RelativeLayout用到的一些重要的属性:
     第一类:属性值为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 ------------------------------------离某元素上边缘的距离

4.表格布局 TableLayout:

TableLayout以行列的形式管理子元素,每一行是一个TableRow布局对象,当然也可以是普通的View对象,TableRow离每放一个元素就是一列,总列数由列数最多的那一行决定。

TableLayout的几个重要属性:

     collapseColumns -----------------------------设置隐藏那些列,列ID从0开始,多个列的话用”,”分隔
     stretchColumns ------------------------------设置自动伸展那些列,列ID从0开始,多个列的话用”,”分隔
     shrinkColumns -------------------------------设置自动收缩那些列,列ID从0开始,多个列的话用”,”分隔
   可以用”*”来表示所有列,同一列可以同时设置为shrinkable和stretchable。
5.绝对布局 AbsoluteLayout:

容器管理容器内控件的位置大小,开发人员通过指定X、Y坐标指定组件的位置

android:layout_x,指定控件在容器中的 x 坐标值

android:layout_y,指定控件在容器中的 y 坐标值

实际应用中一般不适用AbsoulteLayout,因为应用该APP的手机屏幕大小,分辨率肯定会不同

6.网格布局 GirdLayout:

GridLayout网格布局管理器是android 4.0 以后才增加的布局管理器

网格布局管理器将容器划分为行×列的网格,每个控件置于网格中,当然也可以通过设置相关属性使一个控件占据多行或多列

比如,做计算器就可以使用网格布局。

Android开发:界面设计之六大layouts介绍的更多相关文章

  1. 20155219实验四 Android开发基础设计实验报告

    20155219实验四 Android开发基础设计实验报告 实验内容 安装Andriod Studio并配置软件 使用Andriod Studio软件实现Hello World!+学号的小程序 实验步 ...

  2. 20155227 《Java程序设计》实验四 Android开发基础设计实验报告

    20155227 <Java程序设计>实验四 Android开发基础设计实验报告 任务一 Android Stuidio的安装测试: 参考<Java和Android开发学习指南(第二 ...

  3. android ui界面设计参数讲解

    百度文库: http://wenku.baidu.com/link?url=s66Hw6byBEzmjL77doYL1YQN4Y_39F7MovaHKs5mVGrzTDOQCAmiM-1N_6Cdm- ...

  4. 20145219 《Java程序设计》实验四 Android开发基础设计实验报告

    20145219 <Java程序设计>实验四 Android开发基础设计实验报告 实验内容 安装Andriod Studio并配置软件 使用Andriod Studio软件实现Hello ...

  5. Android的界面设计工具 DroidDraw

    Android的界面设计工具 DroidDraw DroidDraw 下载地址:http://code.google.com/p/droiddraw/ 如图 也可以使用在线的版本(http://www ...

  6. Android典型界面设计(3)——访网易新闻实现双导航tab切换

    一.问题描述 双导航tab切换(底部区块+区域内头部导航),实现方案底部区域使用FragmentTabHost+Fragment, 区域内头部导航使用ViewPager+Fragment,可在之前博客 ...

  7. Android典型界面设计(5)——使用SlidingMenu和DrawerLayout分别实现左右侧边栏

    一.问题描述 侧边栏是Android应用中十分常见的界面效果,可随主屏在左侧或右侧联动,是特别适应手机等小屏幕特性的典型界面设计方案之一,常用作应用的操作菜单,如图所示 实现侧边栏可以使用第三方组件s ...

  8. Android典型界面设计(6)——ActionBar Tab+ViewPager+Fagment实现滑动导航

    一.问题描述 在Android典型界面设计一文中,实现典型滑动导航界面,其实使用ActionBar 也可以轻松实现这一效果,甚至也可实现类似Android典型界面设计(3)的双导航效果.可见Actio ...

  9. Android典型界面设计(7) ——DrawerLayout+Fragement+ViewPager+PagerTabStrip实现双导航

    一.问题描述 在Android典型界面设计(3)的我们实现了双导航效果,即外层底部导航和内部区域的头部导航,如网易新闻等很多应用采用了这种导航,但Google提供DrawerLayout可实现抽屉式导 ...

随机推荐

  1. Ansible - iventory

    概述 简单的 ansible 准备 ansible 安装 免密登录 约定 因为重点是 iventory, 所以只使用最简单的模块 ping 1. host-simple 概述 简单版 hosts 文件 ...

  2. CSS学习(6)层叠

    1.声明冲突 不同的样式,多次应用到同一元素 层叠:解决声明冲突的过程,浏览器自动处理(权重计算) 有时候需要修改样式的时候,可以使用优先级高的方式覆盖,而不是在源代码修改 ①比较重要性 (1)作者样 ...

  3. jq的 on 事件委托 导致多次执行问题

    解除 这个元素 在 父级上的 click 事件委托$(msg.fatherDiv).off('click','.fangdaimg_fn2'); click事件$('.fangdaimg_fn2'). ...

  4. css 把图片变成灰色

    3.14号刚下班,噩耗传来,伟大的物理学家斯蒂芬·威廉·霍金去世了. 同事正好叫我吃饭,几分钟内去看了一眼百度百科,一看也都变黑白了,可是查看图片还是彩色的,也是哪有这么快的时间来p图呢,回来搜了一下 ...

  5. oracle 12c pdb开启和关闭

    oracle 12c pdb开启和关闭 //开启数据库 sqlplus / as sysdba;                  //登录连接CDB,默认是root container;startu ...

  6. yii2.0 验证码

    首先我们在控制器里创建一个actions方法,用于使用yii\captcha\CaptchaAction <?php namespace app\controllers; use YII; us ...

  7. Educational Codeforces Round 76 (Rated for Div. 2)E(最长上升子序列)

    #define HAVE_STRUCT_TIMESPEC#include<bits/stdc++.h>using namespace std;int a[200007],b[200007] ...

  8. iOS开发常用Mac终端命令

    常用命令: 1.grep -lr "prefs:root=" * cd 当某一文件夹下,在当前文件目录下搜索对应的内容(橘色字符串替换为你想要搜索的内容).可以用来搜索工程中在第三 ...

  9. Vue-路由模式 hash 和 history

    Vue 为了构建 SPA(单页面应用),需要引入前端路由系统,这也就是 Vue-Router 存在的意义.前端路由的核心,就在于 —— 改变视图的同时不会向后端发出请求. 创建的项目默认是hash模式 ...

  10. 04-Docker-Container管理操作

    目录 04-Docker-Container管理操作 参考 容器运行须知 容器生命周期 容器管理命令 1. 生命周期 2. 查看操作 3. 命令执行 4. 文件复制 容器用途分类 04-Docker- ...