(2)视图基础

1.设置视图的高度

视图宽度通过属性Android:layout_width表达,视图高度通过属性android:layout_heigth表达,宽高的取值主要有以下三种

  1.match_parent:表示与上级视图保持一致。

  2.wrap_contet:表示与内容自适应。

  3.以dp为单位的具体尺寸。

在java文件中设置视图的宽高

首先确保xml中的宽高属性值为wrap_content,接着打开该页面对应的java代码,依序执行以下步骤

  1.调用控制对象的getLayoutParams方法,获得该控件的布局参数。

  2.布局参数的width属性表示宽度,height属性表示高度,修改这两个属性

  3.调用控件对象的setLayoutParams方法,填入修改后的布局参数使之生效。

2.设置视图的间距

(1)采用layout.mardin属性,它指定了当前视图与周围平级视图之间的距离,包括layout_margin、layout_marginLeft、layoutmarginTop、layoutmarRigth、layout_marginBottom.

(2)采用padding属性,它指定了当前视图与内部视图下级视图之间的距离。包括padding、paddingLeft、paddingTop、paddingRight、paddingBottom。

3.设置视图的对其方式

设置视图的对齐方式有两种途径:

  1.采用layout_gravity属性,它指定了当前视图相对于上级视图的对齐方式。

  2.采用gravity属性,它指定了下级视图相对于当前视图的对齐方式。

layout_gravity与gravity的取值包括left、top、right、bottom,还可以用竖线连接各取值,例如“left|top”是靠左上角对齐。

(3)常用布局

1.线性布局

  (1)orientation属性值为horizontal时,内部视图在水平方向从左往右排列。

  (2)orientation属性值为vertical时内部视图在垂直方向上从上往下排列。

注意:如果不指定orientation属性,则LinearLayout默认水平方向排列。

2.线性布局的权重

线性布局的权重指的是线性布局的下级视图各自拥有多大比例的宽高

权重属性名叫layout_weight但该属性不在LinearLayout节点设置,而在线性布局的直接下级视图设置,表示该下级视图占据的宽高比例

  (1)layout_width填0dp时,layout_weight表示水平方向的宽度比例

  (2)layout_height填0dp时,layout_weight表示垂直方向的高度比例

3.相对布局

相对布局的下级视图位置由其他视图决定。用于确定下级视图位置的参照物分为两种:

  (1)与该视图自身平级的视图

  (2)该视图的上级视图(也就是它归属的RelativeLayout)

如果不设定下级视图的参照物,那么下级视图默认显示在RalationLayout内部的左上角。

3月2号Android开发学习的更多相关文章

  1. android开发学习笔记000

    使用书籍:<疯狂android讲义>——李刚著,2011年7月出版 虽然现在已2014,可我挑来跳去,还是以这本书开始我的android之旅吧. “疯狂源自梦想,技术成就辉煌.” 让我这个 ...

  2. Android开发学习总结(一)——搭建最新版本的Android开发环境

    Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...

  3. Android开发学习之路-RecyclerView滑动删除和拖动排序

    Android开发学习之路-RecyclerView使用初探 Android开发学习之路-RecyclerView的Item自定义动画及DefaultItemAnimator源码分析 Android开 ...

  4. Android开发学习路线图

    Android开发学习方法: Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大.因此,一个好的学习方法对我们学习Android开发很重要. 在此建议, ...

  5. Android开发学习之LauncherActivity开发启动的列表

    Android开发学习之LauncherActivity开发启动的列表 创建项目:OtherActivity 项目运行结果:   建立主Activity:OtherActivity.java [jav ...

  6. 最实用的Android开发学习路线分享

    Android开发学习路线分享.Android发展主导移动互联发展进程,在热门行业来说,Android开发堪称火爆,但是,虽然Android有着自身种种优势,但对开发者的专业性要求也是极高,这种要求随 ...

  7. Android开发学习必备的java知识

    Android开发学习必备的java知识本讲内容:对象.标识符.关键字.变量.常量.字面值.基本数据类型.整数.浮点数.布尔型.字符型.赋值.注释 Java作为一门语言,必然有他的语法规则.学习编程语 ...

  8. Android开发学习之路--基于vitamio的视频播放器(二)

      终于把该忙的事情都忙得差不多了,接下来又可以开始good good study,day day up了.在Android开发学习之路–基于vitamio的视频播放器(一)中,主要讲了播放器的界面的 ...

  9. Android开发学习之路--Android Studio cmake编译ffmpeg

      最新的android studio2.2引入了cmake可以很好地实现ndk的编写.这里使用最新的方式,对于以前的android下的ndk编译什么的可以参考之前的文章:Android开发学习之路– ...

  10. Android开发学习之路--网络编程之xml、json

    一般网络数据通过http来get,post,那么其中的数据不可能杂乱无章,比如我要post一段数据,肯定是要有一定的格式,协议的.常用的就是xml和json了.在此先要搭建个简单的服务器吧,首先呢下载 ...

随机推荐

  1. 主线程 子线程 调用 ThreadId BeginInvoke调用和Invoke调用

    BeginInvoke是异步线程执行 class Program    {        static int TakeWhile() {            int threadid = Thre ...

  2. OSPF的安全认证

    OSPF的安全认证 OSPF通过LSA报文同步状态信息,协议根据LSA提供的状态信息,快速实行全网路由的建立.也就是一通百通,一变则变.坏处就是有人搞破坏,一坏则百坏.为防止网络破坏活动,实行认证(明 ...

  3. nop4.3 用户权限管理

    权限管理涉及到5张表: //用户表 select * from Customer //角色表select * from CustomerRole //用户和角色对应关系select * from Cu ...

  4. maven加载本地的jar包

    方式1 ,通过scope = system的方式加载 <dependency> <groupId>com.sun.jna</groupId> <artifac ...

  5. R7-7 调查电视节目受欢迎程度

    R7-7 调查电视节目受欢迎程度 分数 15 全屏浏览题目 切换布局 作者 颜晖 单位 浙大城市学院 某电视台要调查观众对该台8个栏目(设相应栏目编号为1~8)的受欢迎情况,共调查了n位观众(1≤n≤ ...

  6. 7.项目结构的构建和提交到gitee

    创建微服务模块 以商城项目的产品模块为例 点击Next,然后倒入依赖的包,Spring Web 然后在选择一个微服务和微服务之间调用需要的包:OpenFeign 导入这两个微服务的组件就行,后面需要用 ...

  7. 供配电一次测 PT柜 解释

    文章来源: PT柜_百度百科 (baidu.com)  视频介绍 很多电工不清楚的高压PT柜,老电工带你了解工作原理和作用_搜狐汽车_搜狐网 (sohu.com) 很多电工怕PT柜,今天电气成套设计实 ...

  8. Hook新特性(一)

    基础Hook 1.useState const [state, setState] = useState(initialState); //返回一个state变量,指为initialState,set ...

  9. js循环中删除数组中的某个元素

    (1)使用js中的splice方法循环删除数组中某个值 eg: var arr=new Array(); arr.push(1); arr.push(2); arr.push(3); arr.push ...

  10. Token过期处理

    Token用于进行接口鉴权,但是Token具有由后端设置的过期时间,当Token过期以后,就无法再请求数据了 项目中后端设置的过期时间为24h,测试时我们可以手动修改token值让Token失效 处理 ...