首页 > 其他分享 >3月2号Android开发学习

3月2号Android开发学习

时间:2023-03-02 23:46:30浏览次数:39  
标签:layout 布局 gravity 视图 学习 开发 下级 Android 属性

(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内部的左上角。

 

标签:layout,布局,gravity,视图,学习,开发,下级,Android,属性
From: https://www.cnblogs.com/cinan/p/17170223.html

相关文章

  • 计网学习笔记二 Link Layer Service
    在上一周的计网学习了network和Internet的总论。在这一周开始的未来几讲将集中在链路层linklayer,并且会有相应的计网lab完成。在这一讲中,我们主要关注链路层提供的服务。......
  • MarkDown学习
    MarkDown学习标题:二级标题三级标题四级标题字体Hello,World!斜体*(内容)*Hello,World!粗体**(内容)**Hello,World!粗体+斜体***()***Hello,World!删......
  • android studio有关grdle配置
    我们每次新建工程的时候,项目都会通过该路径下寻找适合的gradle包,如果没有则会自动下载到对应的文件夹下......
  • 机器学习: 可视化反卷积操作
    转置卷积操作的详细分解1.简介转置卷积是用于生成图像的,尽管它们已经存在了一段时间,并且得到了很好的解释——我仍然很难理解它们究竟是如何完成工作的。我分享的文章描......
  • Spring 为解决应用开发的复杂性而生
    课程简介和目标是一个开源框架,它由RodJohnson创建,.它是一个容器框架,用来装javabean,这种中间层框架可以起一个连接作用,比如说把Struts和hibernate结合在一起运用,就是早期......
  • Spring 为解决应用开发的复杂性而生
    课程简介和目标是一个开源框架,它由RodJohnson创建,.它是一个容器框架,用来装javabean,这种中间层框架可以起一个连接作用,比如说把Struts和hibernate结合在一起运用,就是早期......
  • DVWA靶场学习
    dvwa靶场学习容器相关启动容器:systemctlstartdocker.service列出可用容器:dockerps-a删除镜像:dockerrmi[image_id]删除容器:dockerrm[container_id]启......
  • 3.2学习总结
    <%@pageimport="dailysummer.Main"%><%@pagelanguage="java"contentType="text/html;charset=UTF-8"pageEncoding="UTF-8"%><%@pageimport="java.io.*,java.ut......
  • Java学习之字节流写入的两个小问题
     packagecom.itheima_112;/*字节流写数据的两个小问题:1:字节流写数据如何实现换行呢?windows:\r\nlinux:\nmac:\r......
  • Mybatis学习_03_配置学习
    Mybatis学习_03MyBatis的配置文件包含了会深深影响MyBatis行为的设置和属性信息。1、环境配置(environments)MyBatis可以配置成适应多种环境,这种机制有助于将SQL映......