(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. 关于htpasswd

    什么是 htpasswd htpasswd是一个apache的内置工具,其生成的文件称之为htpasswd文件.htpasswd文件本身一个密码本,或者类似于数据库一样,用来存储一些密码(凭证)信息. ...

  2. 把pyecharts动图导入到PPT中

    如何把echarts 动图导入PPT 置顶 且听风来 2019-05-22 14:54:17 3347 收藏 6展开 首先看PPT是否开启插件,开启后 此处就有标志,然后就在你想插入的幻灯片处插入两个 ...

  3. C++ 用同一个raw pointer传入shared_ptr构造函数生成两个智能指针有什么问题?

    Effective Modern C++ Item 19: use std::shared_ptr for shared-ownership resource Now, the constructor ...

  4. flutter Color和colors

    "Color(颜色)"是我们在设置应用程序界面样式时最常用到的属性. Flutter 中颜色设置的方式有很多种,其中最常用的有下列几种: Color c1 = Color(0xFF ...

  5. Jenkins拉取GitHub上代码

    1.github 生成 Personal Access Token 2.github 设置 GitHub webhooks (具体需要持续集成的项目),新建或者设置现有项目的 webhooks 选项, ...

  6. 建筑CAD软件如何设置当前默认层高?

    在绘制CAD建筑图的过程中,必然少不了要对层高进行设置,如果每层的层高都一样,想要调整建筑CAD软件默认当前层高的话该如何设置?本节建筑CAD教程就和小编一起来了解一下浩辰CAD建筑软件中调整默认当前 ...

  7. Docker学习笔记-02 常用命令

    1.启动类: 启动docker: systemctl start docker 停止docker: systemctl stop docker 重启docker: systemctl restart ...

  8. Freertos stack-overflow 检测

    (出现的地址信息没有特定意义,仅供参考) vApplicationStackOverflowHook() at rtos.c:371 0x55aa vTaskSwitchContext() at ta ...

  9. PNAS:微生物组分析揭示人类皮肤的独特性

    https://blog.csdn.net/woodcorpse/article/details/87989663

  10. pytorch MNIST加载已下载的数据集出现问题及解决方法

    import torch import torch.nn as nn from torch.autograd import Variable import torchvision import tor ...