当前位置: 首页 > article >正文

【Android】布局文件layout.xml文件使用控件属性android:layout_weight使布局较为美观,以RadioButton为例

目录

  • 说明
  • 举例

说明

  简单来说,android:layout_weight为当前控件按比例分配剩余空间。且单个控件该属性的具体数值不重要,而是多个控件的属性值之比发挥作用,例如有2个控件,各自的android:layout_weight的值设为0.5和0.5,或者设置为5和5,布局效果都是各占一半,都是1:1

举例

  本文以RadioButton为例,使用此控件需要搭配RadioGroup,初始版本代码如下:

<RadioGroup
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">        

    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="仅通知"
        android:textSize="20dp"
        android:textColor="@android:color/black"/>

    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="自动化"
        android:textSize="20dp"
        android:textColor="@android:color/black"/>
</RadioGroup>

  实现效果如下:
在这里插入图片描述
  喜欢对称放在屏幕中间风格的,给两个RadioButton设置android:layout_weight值为0.5,代码不再赘述,效果图如下:
在这里插入图片描述
  感觉还是不够对称的,希望能够在屏幕两侧有对称的空余,可以随便加些控件如TextView来占个位置,注意,占空控件的宽、高属性android:layout_widthandroid:layout_height设置为wrap_content或者0dp,且RadioButton不设置android:layout_weight属性。 这样占空控件只会分配RadioButton布局好后的剩余空间。代码补充如下:

<RadioGroup
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    
    <TextView
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_weight="3"
        android:layout_gravity="center"/>

    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="仅通知"
        android:textSize="20dp"
        android:textColor="@android:color/black"/>

    <TextView
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_weight="3"
        android:layout_gravity="center"/>

    <RadioButton
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="自动化"
        android:textSize="20dp"
        android:textColor="@android:color/black"/>

    <TextView
        android:layout_width="0dp"
        android:layout_height="0dp"
        android:layout_weight="3"
        android:layout_gravity="center"/>
</RadioGroup>

  最终效果如下:
在这里插入图片描述


http://www.kler.cn/a/520144.html

相关文章:

  • (一)HTTP协议 :请求与响应
  • 随笔十七、eth0单网卡绑定双ip的问题
  • 粒子群算法 笔记 数学建模
  • JS面相对象小案例:自定义安全数组
  • 【6】YOLOv8 训练自己的分割数据集
  • xss靶场
  • 私有包上传maven私有仓库nexus-2.9.2
  • FreeRtos的使用教程
  • 宏_wps_宏修改word中所有excel表格的格式_设置字体对齐格式_删除空行等
  • STM32-时钟树
  • 新电脑安装系统找不到硬盘原因和解决方法来了
  • 二叉搜索树中的众数(力扣501)
  • Golang的GPM调度器
  • React 前端开发解析:从核心概念到最佳实践
  • Spring MVC 综合案例
  • 记一次STM32编译生成BIN文件过大的问题(基于STM32CubeIDE)
  • 不同操作系统(Windows、Linux)上安装和配置Tomcat的详细教程
  • Java 从数组中查找重复元素的几种方法
  • Scratch游戏作品 | 僵尸来袭——生存大战,保卫你的领地!
  • introJs去实现新手指引
  • 第十四讲 JDBC数据库
  • 在亚马逊云科技上使用Luma AI Ray2视频模型生成炫酷视频 (上)
  • Kafka 副本机制(包含AR、ISR、OSR、HW 和 LEO 介绍)
  • Coze插件开发之基于已有服务创建并上架到扣子商店
  • 论文笔记(六十三)Understanding Diffusion Models: A Unified Perspective(三)
  • Java 多线程编程介绍