第二节:布局入门

一、线性布局

需要掌握的属性:

1.orientation:排列方式

vertical:垂直

Horizontal:水平

2.weight:水平布局的权重
3.gravity:子控件对齐方式
4.layout_gravity控件自身相对于父容器的对齐方式

小技巧:

按钮default,click,focus等状态图片更改
<?xml version="1.0" encoding="UTF-8"?>

<selector xmlns:android="http://schemas.android.com/apk/res/android">

     <item android:state_pressed="true"

           android:drawable="@drawable/login_s" /> <!-- pressed -->

     <item android:state_focused="true"

           android:drawable="@drawable/login_d" /> <!-- focused -->

     <item android:drawable="@drawable/login_d" /> <!-- default -->

 </selector>

 二、相对布局

1.相对于某一控件

android:layout_above将该控件的底部置于给定ID的控件之上; 
android:layout_below将该控件的底部置于给定ID的控件之下; 
android:layout_toLeftOf    将该控件的右边缘与给定ID的控件左边缘对齐; 
android:layout_toRightOf  将该控件的左边缘与给定ID的控件右边缘对齐; 
android:layout_alignBaseline  将该控件的baseline与给定ID的baseline对齐; 
android:layout_alignTop       
将该控件的顶部边缘与给定ID的顶部边缘对齐; 
android:layout_alignBottom   将该控件的底部边缘与给定ID的底部边缘对齐; 
android:layout_alignLeft       
将该控件的左边缘与给定ID的左边缘对齐; 
android:layout_alignRight      将该控件的右边缘与给定ID的右边缘对齐;

2.
相对于父容器
android:layout_alignParentTop      如果为true,将该控件的顶部与其父控件的顶部对齐; 
android:layout_alignParentBottom如果为true,将该控件的底部与其父控件的底部对齐; 
android:layout_alignParentLeft      如果为true,将该控件的左部与其父控件的左部对齐; 
android:layout_alignParentRight    如果为true,将该控件的右部与其父控件的右部对齐; 
3.相对于内部控件 
android:layout_centerHorizontal如果为true,将该控件的置于水平居中; 
android:layout_centerVertical

如果为true,将该控件的置于垂直居中; 
android:layout_centerInParent

如果为true,将该控件的置于父控件的中央;

三、表格布局

1. 全局属性

android:stretchColumns   设置可伸展的列。该列可以向行方向伸展,最多可占据一整行。

android:shrinkColumns     设置可收缩的列。当该列子控件的内容太多,已经挤满所在行,那么该子控件的内容将往列方向显示。

android:collapseColumns设置要隐藏的列。

2. 单元格属性,有以下2个参数:

android:layout_column    指定该单元格在第几列显示

android:layout_span
       指定该单元格占据的列数(未指定时,为1)

示例:

android:layout_column="1"    该控件显示在第1列

android:layout_span="2"
       该控件占据2列

说明:一个控件也可以同时具备这两个特性。

四、帧布局

 百度网盘视频地址:http://pan.baidu.com/s/1pJ4ST1h
 

android内部培训视频_第二节 布局基础的更多相关文章

  1. android内部培训视频_第一节

    声明:本视频为公司内部做android培训时录制的,无任何商业目的.同时鉴于水平有限,可能不符合您的需求,放在这里的目的是提供给公司同事下载,作为培训的一个记录,也作为一个系列教程的自我督促完成的理由 ...

  2. android内部培训视频_第五节(1)_OA实战之登录界面

    第五节(1):OA实战之登录界面  一.登录界面布局 1.背景图片 2.文本框 3.checkbox 4.按钮 暂未实现点击切换图片效果 <RelativeLayout xmlns:androi ...

  3. android内部培训视频_第四节(1)_异步网络操作

    第四节(1):异步网络操作  一.结合asyncTask下载网络图片 1.定义下载类,继承自asyncTask,参数分别为:String(url地址),Integer(刻度,本例没有用到),BitMa ...

  4. android内部培训视频_第三节 常用控件(Button,TextView,EditText,AutocompleteTextView)

    第三节:常用控件 一.Button 需要掌握的属性: 1.可切换的背景 2.9.png使用 3.按钮点击事件 1)  onClick 3) 匿名类 4) 公共类 二.TextView 常用属性 1.a ...

  5. android内部培训视频_第三节(3)_常用控件(ViewPager、日期时间相关、ListView)

    第三节(2):常用控件之ViewPager.日期时间相关.ListView  一.ViewPager 实例:结合PagerAdapter滑动切换图片  二.日期时间相关:AnalogClock\Dig ...

  6. Rafy 领域实体框架 - 公司内部培训视频

    本月给公司内部一个项目做架构重构,其中使用到了 Rafy 框架.所以我培训了 Rafy 领域实体框架的使用方法,过程中录制了视频,方便其他同事查看.现在把视频放到园里来分享下,有兴趣的朋友可以看看,有 ...

  7. Android Wear开发 - 卡片通知 - 第二节 : 自定义Wear卡片样式

    一.前言说明 在上一节添加Android Wear通知特性我们实现了简单的Android Wear卡片拓展,但是默认提供给我们的多张卡片只能实现简单的文字展示,如果想要自定义布局,添加图片等等,则需要 ...

  8. Android Wear开发 - 数据通讯 - 第二节 : 数据的发送与接收

    本节由介绍3种数据的发送接收:1.Data Items : 比特类型数据,限制100KB以内2.Assets : 资源类型数据,大小无上限3.Message : 发送消息,触发指令 http://de ...

  9. sencha touch 在线实战培训 第一期 第二节

    2013.12.30晚上8点开的课,仍然有些紧张,开始讲课进度很慢,后面又有些快了... 本期培训一共八节,前三堂免费,后面的课程需要付费才可以观看. 本节内容: 页面实现及跳转控制 跳转容器.路由理 ...

随机推荐

  1. 关于Charles抓取手机访问的Https请求

    准备工作 本次测试的Charles版本为3.9.1 · 首先在Charles中开启HTTP请求的远程监听. · 然后分别在手机和Mac上安装Charles的证书. 注意:证书一定要一致,否则抓取不到. ...

  2. 定时脚本: 删除HDFS中的过期文件

    1. 基本原理: 通过hadoop fs -ls *命令获取相关文件或目录的修改时间,然后与设定的过期时间进行比较,之后执行删除操作即可 2. 相关代码: #!/bin/bash source ~/. ...

  3. AES加密解密通用版Object-C / C# / JAVA

    1.无向量 128位 /// <summary> /// AES加密(无向量) /// </summary> /// <param name="plainByt ...

  4. flume使用示例

    flume的特点: flume是一个分布式.可靠.和高可用的海量日志采集.聚合和传输的系统.支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受 ...

  5. Android下的xml资源详解

    最近遇到的bitmap资源 <?xml version= "1.0" encoding ="utf-8"?> <bitmap xmlns:an ...

  6. Anaular指令详解

    目录:directive()   restrict   replace   template   templateUrl  scope  transclude   ng-transclude   co ...

  7. C++-数据库【1】-C++连接MSSQL数据库

    测试环境—— 系统:Win7 64bit 编译器:VC++ 2015 数据库:MSSQL 2008 R2 #include <Windows.h> #include <stdio.h ...

  8. Codeforces663E Binary Table(FWT)

    题目 Source http://codeforces.com/contest/663/problem/E Description You are given a table consisting o ...

  9. js判断图片是否加载完成

    var img = new Image(); //新建一个图片对象:img.src = ...; //图片地址是你准备要加载的地址:if(img.complete){ //表示图片已经加载完成}

  10. windows下面安装Python和pip终极教程

    在大二的时候接触过一段时间的Python,最近又开始玩起了这门语言.总的来说,个 人很喜欢Python的语言风格,但是这门语言对于windows并不算很友好,因为如果是初学者在windows环境下安装 ...