Android开发笔记(2)——ViewGroup
笔记链接:http://www.cnblogs.com/igoslly/p/6794344.html
一、ViewGroup
1、ViewGroup的意义——整合Layout多个不同View,并对其进行位置排列
2、ViewGroup种类
Linear Layout 简单直接的布局格式,只允许水平放置 / 垂直放置
Relative Layout 复杂生动的布局格式,可根据父 / 子View相对位置来设置
二、Layout
- Anroid URL标记
xmlns:android=”http://schemas.android.com/apk/res/android”
在XML文件根视图开合标记中添加XML命名空间,和“android:”表示属于android属性。
- 布局参数
众多属性里,涉及background、text、textSize均由TextView风格化视图处理
涉及layout_width\layout_height\layout_above为布局参数,由ViewGroup统一管理。
- Linear Layout
1) 只允许整个布局全水平 / 全垂直放置
android: orientation= ”vertical”
android: orientation= ”horziontal”
2) 如何在不同设备屏幕上实现视图等分?
固定长宽×
layout_weight:设置每个View的长宽权重,等比例放置
规则:
1) 配置固定长宽、wrap_content的View
2) 配置layout_weight
android:layout_width=”0dp”
android:layout_weight=“1”
3) 计算剩余空间
4) 分配剩余空间(全部占满)
a) 当有且仅有一个View设置权重,无论值大小,均占满
b) 当两个及以上View设置权重,按照设置数值,等比例分配空间
c) 特殊情况:等分——保证所有View权重值相等
5) 当weight=0 / 不设置(默认为0)时,View大小不改变
- Relative Layout
1) 相对于Parent View
整个视图贴合四条边,设置对齐属性,true / false
android : layout_alignParentTop
android : layout_alignParentBottom
android : layout_alignParentLeft
android : layout_alignParentRight
所有加入relative layout的View默认放置在左上角
2) 居中显示
android : centerHorizontal = “ true”
android : centerVertical = “true”
结合其他属性,即可确定以上8个红星位置
3) View ID命名
锚定位置:无论其他元素如何变化,保持固定位置的View,相对于Child View设置,需要对每个View进行命名(设置ID)
定义(第一次使用) android : id = “@ + id / ben_text_view”
重复使用:“@ id / ben_text_view”
4) 相对于Child View
android : layout_toLeftof = “@ id / ben_text_view”
android : layout_toRightof
android : layout_above
android : layout_below
- Padding & Margin
1) 两者区别
a) Padding由TextView处理,强行扩大原面积
b) Margin由Parent ViewGroup处理,保持原View大小,向外设置“禁飞区”
2) 属性设置
四周 android : padding / android : margin
单独(进入单独设置后,为设置参数默认为0)
android : paddingLeft / Right / Top / Bottom
android : marginLeft / Right / Top / Bottom
三、Android Studio安装 & 使用
1) Android Studio 是特定为开发Android apps应用的平台,需要先安装Java开发工具包(Java Development Kit)
2) Android Project
Domain——填写公司域名或者个人域名
Package name —— 倒置“Domain + appname ”,是识别这个app的唯一标识
Android版本——不同版本以糖果甜点来命名
低版本可兼容高版本,高版本不支持低版本平台,例如采用最新的Marshmallow,只能保证使用最新版本的4.7%用户下载
常采用 IcecreamSandwich,保证97.4%用户可以下载
3) 实机演练:Android Phone打开设置,点击About mobile7次可打开Developer Mode
——如果是WINDOWS,需要下载OEM USB Drivers
4) 电脑模拟:使用Android Emulator
——WINDOW 使用Virtual Devices ,需要系统支持Virtual Technology,并在BIOS中打开
l 生日贺卡实践演练
Android Studio视图配置
程序设计流程
Android Studio视图配置
申明:
1、本笔记为文字及图片均为个人原创,请勿转载
2、Android开发课程于2017年4年参与GoogleDeveloper进行学习,
Android开发笔记(2)——ViewGroup的更多相关文章
- 【转】Android开发笔记(序)写在前面的目录
原文:http://blog.csdn.net/aqi00/article/details/50012511 知识点分类 一方面写写自己走过的弯路掉进去的坑,避免以后再犯:另一方面希望通过分享自己的经 ...
- Android开发笔记(一百三十四)协调布局CoordinatorLayout
协调布局CoordinatorLayout Android自5.0之后对UI做了较大的提升.一个重大的改进是推出了MaterialDesign库,而该库的基础即为协调布局CoordinatorLayo ...
- [置顶] Android开发笔记(成长轨迹)
分类: 开发学习笔记2013-06-21 09:44 26043人阅读 评论(5) 收藏 Android开发笔记 1.控制台输出:called unimplemented OpenGL ES API ...
- Android开发笔记:打包数据库
对于数据比较多的控制一般会加入SQLite数据库进行数据存储,在打包时这些数据库是不自动打包到apk中的,如何创建数据库呢 方法1:将创建数据库的sql语句在SQLiteHelper继承类中实现,在第 ...
- Android开发笔记--hello world 和目录结构
原文:Android开发笔记--hello world 和目录结构 每接触一个新东西 都有一个hello world的例子. 1.新建项目 2.配置AVD AVD 没有要新建个,如果不能创建 运行SD ...
- [APP] Android 开发笔记 003-使用Ant Release 打包与keystore加密说明
接上节 [APP] Android 开发笔记 002 5. 使用ant release 打包 1)制作 密钥文件 release.keystore (*.keystore) keytool -genk ...
- [APP] Android 开发笔记 002-命令行创建默认项目结构说明
接上节:[APP] Android 开发笔记 001 4. 默认项目结构说明: 这里我使用Sublime Text 进行加载.
- Android开发笔记——以Volley图片加载、缓存、请求及展示为例理解Volley架构设计
Volley是由Google开源的.用于Android平台上的网络通信库.Volley通过优化Android的网络请求流程,形成了以Request-RequestQueue-Response为主线的网 ...
- 【转】Android开发笔记——圆角和边框们
原文地址:http://blog.xianqu.org/2012/04/android-borders-and-radius-corners/ Android开发笔记——圆角和边框们 在做Androi ...
- 《ArcGIS Runtime SDK for Android开发笔记》
开发笔记之基础教程 ArcGIS Runtime SDK for Android 各版本下载地址 <ArcGIS Runtime SDK for Android开发笔记>——(1).And ...
随机推荐
- springmvc 中model中放入枚举类型
我们直接看样例: Map<String, String> mallMap = new HashMap<String, String>(); mallMap.put(MallSt ...
- VMware实用技巧
1.VM快照管理 这个功能实在太常用,不用我多废话.这里只是提醒一下还没有用过快照的同学,赶紧的给自己的VM保存点快照吧,这样VM里的系统出了问题或是有其它需要很容易让你还原到原来的某个点,这功能可比 ...
- 11种常见sqlmap使用方法
sqlmap是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工具,只是一个便捷性问题. 一.SQLMAP用于Access数据库注入 (1) 猜解是否能 ...
- 【跟我一步一步学Struts2】——登陆样例
本篇博客通过一个简单的登陆小样例来入门,简单了解一下struts2是怎样工作的: 第一步引入Jar包: commons-fileupload-1.2.1.jar,文件上传 commons-loggin ...
- JSP学习笔记七之Cookie
首先提一下http协议的无状态性.指的是server不会记住已经给它发过请求的client. 每次收到请求都会觉得是一个新的client发过来的. (即:server不会记住给他发过请求的client ...
- Apache2.2安装
貌似Apache官网从2.2.X之后不再发布Windows安装版本,需要的话得自己编译 从官网下载2.2.25(我下了一个no-ssl的),安装提示 因为本机已经安装IIS,占用80端口,修改Apac ...
- (五)Java 对象和类
Java 对象和类 Java作为一种面向对象语言.支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 消息解析 本节我们重点研究对象和类的概念. 对象:对象是类的一个实例,有状态和行为. ...
- linux常见基础问题
1,32位与64位的区别,怎么查看系统版本? 32位相比于64位处理速度更慢一些,64位同样也比32位更占内存.用户体验上没有区别:用uname -a 查看系统版本信息 2,swap分区的作用是什么 ...
- android 在代码中设置字体颜色 问题
项目中需要在代码中控制字体颜色 之前是直接引用资源文件 但是不行 tv.setTextColor(R.color.textColor_black); 无效果 后来在网上找了资料发现 要从reso ...
- bzoj4825
LCT 昨天调试一天没出来,今天推倒重写还是gg了,内心崩溃照着源代码抄,结果发现自己把原树fa和splay的fa一起维护,各种re... 其实我们手玩一下,发现其实树的形态变化很小,那么就可以用lc ...