Android GridLayout简介,以计算器为例

简介: 《Android GridLayout简介,以计算器为例》Android GridLayout默认从左往右水平布局元素。


《Android GridLayout简介,以计算器为例》

Android GridLayout默认从左往右水平布局元素。可以通过设置属性:android:orientation=,控制子元素布局的方向为水平还是垂直。

GridLayout的属性 android:layout_row 和 android:layout_column 设定常数值则指定GridLayout显示的行列数。

设定 android:layout_rowSpan 或者 android:layout_columnSpan 常数值,且同时设定android:layout_gravity="fill",则该元素将跨界占满指定的行列。

以一个简单的计算器布局为例加以说明,该计算器仅仅通过一个布局文件即可实现,下面就是一个使用Android GridLayout布局实现的计算器效果图如下:


上面用Android GridLayout实现的计算器效果图XML布局文件完整代码:

<?xml version="1.0" encoding="utf-8"?>
<GridLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:columnCount="4"
    android:orientation="horizontal"
    android:rowCount="5" >

    <Button
        android:id="@+id/one"
        android:text="1" />

    <Button
        android:id="@+id/two"
        android:text="2" />

    <Button
        android:id="@+id/three"
        android:text="3" />

    <Button
        android:id="@+id/devide"
        android:text="/" />

    <Button
        android:id="@+id/four"
        android:text="4" />

    <Button
        android:id="@+id/five"
        android:text="5" />

    <Button
        android:id="@+id/six"
        android:text="6" />

    <Button
        android:id="@+id/multiply"
        android:text="×" />

    <Button
        android:id="@+id/seven"
        android:text="7" />

    <Button
        android:id="@+id/eight"
        android:text="8" />

    <Button
        android:id="@+id/nine"
        android:text="9" />

    <Button
        android:id="@+id/minus"
        android:text="-" />

    <Button
        android:id="@+id/zero"
        android:layout_columnSpan="2"
        android:layout_gravity="fill"
        android:text="0" />

    <Button
        android:id="@+id/point"
        android:text="." />

    <Button
        android:id="@+id/plus"
        android:layout_gravity="fill"
        android:layout_rowSpan="2"
        android:text="+" />

    <Button
        android:id="@+id/equal"
        android:layout_columnSpan="3"
        android:layout_gravity="fill"
        android:text="=" />

</GridLayout>

相关文章
|
7月前
|
XML Android开发 数据安全/隐私保护
10. 【Android教程】网格布局 GridLayout
10. 【Android教程】网格布局 GridLayout
336 1
|
8月前
|
缓存 算法 Java
Linux内核新特性年终大盘点-安卓杀后台现象减少的背后功臣MGLRU算法简介
MGLRU是一种新型内存管理算法,它的出现是为了弥补传统LRU(Least Recently Used)和LFU(Least Frequently Used)算法在缓存替换选择上的不足,LRU和LFU的共同缺点就是在做内存页面替换时,只考虑内存页面在最近一段时间内被访问的次数和最后一次的访问时间,但是一个页面的最近访问次数少或者最近一次的访问时间较早,可能仅仅是因为这个内存页面新近才被创建,属于刚刚完成初始化的年代代页面,它的频繁访问往往会出现在初始化之后的一段时间里,那么这时候就把这种年轻代的页面迁移出去
|
8月前
|
存储 编解码 API
Android Media Framework(一)OpenMAX 框架简介
OpenMAX IL是Khronos Group为嵌入式和移动设备设计的低层级接口,用于统一调用音频、视频和图像编解码器,确保跨平台兼容性。它包括Core API(管理组件加载和方法调用)和Component API(组件实现,如源、接收器、编解码器等)。组件通过端口进行数据交互,客户端使用Core API加载和控制组件。Android引入OMX IL以支持不同芯片上的编解码器。组件状态包括Loaded、Idle、Executing和Invalid。组件架构涉及参数配置、命令处理和缓冲区管理,数据交换通过回调函数完成,端口持有预分配或组件自分配的缓冲区。
120 0
|
SQL 人工智能 Java
Android 命令行工具简介
Android SDK 中包含了开发应用所需的多个软件包。本页列出了可供使用的最重要的命令行工具(按提供这些工具的软件包整理)。
|
SQL 人工智能 移动开发
Android etc1tool之png图片转换pkm 和 zipalign简介
etc1tool 是一种命令行实用程序,可用于将 PNG 图片编码为 ETC1 压缩标准格式(PKM),并将 ETC1 压缩图片解码回 PNG。
|
Java Linux API
#1,Android 体系结构 2000字简介 入门Android(Studio)开发
#1,Android 体系结构 2000字简介 入门Android(Studio)开发
|
8月前
|
Android开发
Android Studio App开发实战项目之计算器的开发及演示(附源码和演示视频,超详细,可直接使用)
Android Studio App开发实战项目之计算器的开发及演示(附源码和演示视频,超详细,可直接使用)
868 0
|
Java 测试技术 持续交付
百度搜索:蓝易云【NetMock简介:简化 Java,Android和Kotlin多平台中的HTTP请求测试?】
使用NetMock,您可以在单元测试、集成测试和端到端测试中轻松地模拟和验证HTTP请求和响应,而无需实际发送请求到外部服务。这样可以提高测试的可靠性和可控性,并加快测试执行的速度。无论是在开发过程中还是在持续集成环境中,NetMock都可以帮助您更轻松地进行HTTP请求测试,提高代码质量和稳定性。
71 1
|
8月前
|
Linux 网络安全 开发工具
Android APP入门之Android的简介以及Android Studio开发环境的搭建和测试(2022最新 图文解释 简单易懂)
Android APP入门之Android的简介以及Android Studio开发环境的搭建和测试(2022最新 图文解释 简单易懂)
177 0
|
XML Java 开发工具
Android apkanalyzer简介
Android apkanalyzer简介