计算器界面网格布局java,安卓案例:网格布局实现计算器界面

安卓案例:网格布局实现计算器界面

一、网格布局(GridLayout)

GridLayout布局使用虚细线将布局划分为行、列和单元格,也支持一个控件在行、列上都有交错排列。

(一)继承关系图

9d44724f3622020d2e3345d3abafd8d6.png

(二)常用属性

1、针对布局的属性

(1)rowCount:行数

(2)columnCount:列数

2、针对子控件的属性

(1)layout_row:子控件在布局的行数

(2)layout_column:子控件在布局的列数

(3)layout_rowSpan:跨行数

(4)layout_columnSpan:跨列数

二、案例运行效果

0732ec8cf288f9815d8557db4174b27f.png

三、实现步骤

1、创建安卓应用0404Demo

e09db4f024d63d46ccc0c6a11e436742.png

2、布局资源文件activity_main.xml

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:background="@mipmap/background"

android:gravity="center"

android:orientation="vertical"

android:padding="15dp"

tools:context="net.hw.ex0404.MainActivity">

android:layout_width="match_parent"

android:layout_height="60dp"

android:background="#eeeeee"

android:editable="false"

android:gravity="right|center_vertical"

android:padding="10dp"

android:text="0123456789"

android:textColor="#0000ff"

android:textSize="30sp" />

android:layout_width="match_parent"

android:layout_height="wrap_content"

android:columnCount="5"

android:orientation="horizontal"

android:rowCount="6">

android:id="@+id/button1"

android:text="MC" />

android:id="@+id/button2"

android:text="MR" />

android:id="@+id/button3"

android:text="MS" />

android:id="@+id/button4"

android:text="M+" />

android:id="@+id/button5"

android:layout_gravity="fill"

android:text="M-" />

android:id="@+id/button6"

android:text="←" />

android:id="@+id/button7"

android:text="CE" />

android:id="@+id/button8"

android:text="C" />

android:id="@+id/button9"

android:text="±" />

android:id="@+id/button10"

android:layout_gravity="fill"

android:text="√" />

android:id="@+id/button11"

android:text="7" />

android:id="@+id/button12"

android:text="8" />

android:id="@+id/button13"

android:text="9" />

android:id="@+id/button14"

android:text="/" />

android:id="@+id/button15"

android:layout_gravity="fill"

android:text="%" />

android:id="@+id/button16"

android:text="4" />

android:id="@+id/button17"

android:text="5" />

android:id="@+id/button18"

android:text="6" />

android:id="@+id/button19"

android:text="*" />

android:id="@+id/button20"

android:layout_gravity="fill"

android:text="1/x" />

android:id="@+id/button21"

android:text="1" />

android:id="@+id/button22"

android:text="2" />

android:id="@+id/button23"

android:text="3" />

android:id="@+id/button24"

android:text="-" />

android:id="@+id/button25"

android:layout_gravity="fill"

android:layout_rowSpan="2"

android:text="=" />

android:id="@+id/button26"

android:layout_columnSpan="2"

android:layout_gravity="fill"

android:text="0" />

android:id="@+id/button27"

android:text="." />

android:id="@+id/button28"

android:text="+" />

运行程序,效果如下:

712a5ab022106a573213b14a4d6b120b.png

3、创建自定义边框配置文件custom_border.xml

88aece65625e6e60168e20bc6228c277.png

4、修改布局文件activity_main.xml

f3dd6e43017d36209b27c032095da38c.png

运行程序,结果如下:

41166cf589f1a5a75b591adfa26a4423.png

5、修改custom_border.xml

1f847d56f7c605a20edd88ff53bcf66a.png

运行程序,效果如下:

30eec7903a11e69570e619f2bca7b222.png

本文分享 CSDN - howard2005。

如有侵权,请联系 support@oschina.cn 删除。

本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/356367.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何让多文本内容只显示一行,其余用省略号来显示

在此需要用到三个属性配合使用&#xff1a; overflow: hidden;/*超出部分隐藏*/white-space: nowrap;/*不换行*/text-overflow:ellipsis;/*超出部分省略号显示*/实例&#xff1a;<p> 兴高采烈的破蛹 重获新生的冲动 寻找爱情世界 美梦  既然不是毛毛虫 就要壮烈的扑火 …

php正则替换p闭合标签,php正则替换标签的实现方法

php正则替换标签的实现方法&#xff1a;首先通过“strip_tags”函数剥去字符串中的HTML标签&#xff1b;然后利用正则表达式替换标签&#xff0c;代码语句如“pregreplace("/s/","",strpregreplace("/s/","")”。推荐&#xff1a;《PH…

php关于ob_start('ob_gzhandler')启用GZIP压缩的bug

如果使用ob_start("ob_gzhandler"); 则ob_clean()后面的输出将不显示&#xff0c;这是个bug&#xff0c;可以用ob_end_clean();ob_start("ob_gzhandler"); 代替ob_clean();否则后面输出内容将是空。 <?phperror_reporting(E_ALL);ob_start("ob_gz…

php ip 省份,PHP有没有生成国内各省份IP地址的类库?

最近项目需要用到随机生成国内IP地址的功能&#xff0c;在网上找了个方法&#xff1a;function rand_ip(){$ip_long array(array(607649792, 608174079), //36.56.0.0-36.63.255.255array(975044608, 977272831), //58.30.0.0-58.63.255.255array(999751680, 999784447), //59…

Html_Img元素 设置图片与其他元素横排高度一致

<img id"numAdd" src"~/Images/jia.jpg" style"width:30px;height:30px;vertical-align:middle;" > 转载于:https://www.cnblogs.com/ingstyle/p/6208202.html

POJ1201 区间

题目大意&#xff1a; 给定n个整数区间[ai,bi]和n个整数ci,求一个最小集合Z&#xff0c;满足|Z∩[ai,bi]|>ci(Z里边在闭区间[ai,bi]的个数不小于ci)。 多组数据&#xff1a; n&#xff08;1<n<50000&#xff09;区间的个数 n行&#xff1a; ai bi ci(0<ai<bi<…

java maven 项目依赖关系,java – 关于依赖关系共享的Maven多模块项目组合

有几个类似的问题,但没有这样的.你如何处理这种情况(典型情况)&#xff1a;一个由8-11个子项目组成的项目,具有父工件/项目和一个主要项目,主要使用/声明其他项目作为模块.问题是所有项目“严格”只共享公共依赖项,如testng,logging,apache commons和stuff.但总是喜欢其中3个使…

junit:junit_JUnit和Hamcrest:在assertEquals上进行改进

junit:junit在我的博客文章中&#xff0c;Java越来越接受静态导入吗&#xff1f; 在本文中&#xff0c;我讨论了在Java中越来越多地使用静态导入来使代码在某些情况下更加流畅。 Java中的 单元测试特别受静态导入的影响&#xff0c;在此博客文章中&#xff0c;我提供了一个简单…

java 语音匹配,java-语音识别,是否可以通过正则表达式确定用户所说的内容?

通常,我建议您为返回的每个单词生成一个Soundex,将您要查找的单词的Soundexes对整个列表评分,作为匹配的一部分字符,并使用这些评分来确定哪个单词更可能成为比赛.例如,开始编码为S363,停止编码为S310.下表根据单词的百分比对匹配的单词进行评分&#xff1a;Word Soundex S363 …

vue.js 2.x 能否设置某个组件不被keep-alive 的解决方案

开发项目的时候&#xff0c;使用的是 vue 2.x 版本 搭配路由切换 vue-router &#xff0c;但是很多时候有些页面需要被缓存&#xff0c;有些页面不需要缓存&#xff0c;那么该如何进行一个处理 这里我使用了一个方案来解决这个问题 : 首先在入口页面进行全部缓存标签 即 <ke…

JWT –生成和验证令牌–示例

JWT提供了一种非常有趣的方式来表示可以验证和信任的应用程序之间的声明。 我的目标是展示一个小的样本&#xff0c;它使用出色的Nimbus JOSE JWT库来生成和验证令牌。 总览 进行介绍的最佳地点之一是这里 。 简而言之&#xff0c;要从jwt.io网站的资料中借用&#xff0c;声明…

无表头单链表的总结----输出链表

#include"head.h" void print(struct Student* head) {struct Student *p;printf("There are %d records:\n", sum);p head;if (p ! NULL){do{printf("%ld %d\n", p->num, p->score);p p->next;} while (p ! NULL); //以链表结尾的…

matlab 次坐标轴 标注,matlab标注坐标轴

matlab绘图如何添加图例/坐标轴刻度像这个图里的 那样的图例如何添加 还有坐标轴的刻度如何用像上图的序号 首先打开电脑上的“matlab”软件&#xff0c;主界面如下图所示&#xff0c;箭头处输入代码即可运行。下面输入代码绘制图像&#xff0c;命令行代码如下图所示。点击ente…

JQUERY操作html--获取和设置内容、属性、回调函数

一&#xff1a;jQuery - 获取内容和属性 1.获得内容 - text()、html() 以及 val() text() - 返回所选元素的文本内容 html() - 返回所选元素的内容&#xff08;包括 HTML 标记&#xff09; <script type"text/javascript" src"jquery-1.11.2.min.js">…

scala使用java类_使用Java和Scala将Play Framework 2应用程序部署到Openshift

scala使用java类几个星期&#xff0c; 马克阿特伍德 &#xff08; Mark Atwood&#xff09; &#xff0c; 豪尔赫艾利斯 &#xff08; Jorge Aliss &#xff09;和我塞巴斯蒂安 斯卡塔诺 &#xff08; SebastinScarano&#xff09;参加了红帽网络研讨会LETS PLAY&#xff01; 在…

matlab13节点线路模型,13节点配电网的建模与仿真.doc

..大学生课外创新实验竞赛总结报告项目简介&#xff1a;在配电网的正常运行中&#xff0c;随着用电负荷的变化和系统运行方式的改变&#xff0c;网络中的损耗也将发生变化。要严格保证所有的用户在任何时刻都有额定的电压是不可能的&#xff0c;因此配电网的某个节点电压偏移额…

C语言 · 未名湖边的烦恼

问题描述每年冬天&#xff0c;北大未名湖上都是滑冰的好地方。北大体育组准备了许多冰鞋&#xff0c;可是人太多了&#xff0c;每天下午收工后&#xff0c;常常一双冰鞋都不剩。每天早上&#xff0c;租鞋窗口都会排起长龙&#xff0c;假设有还鞋的m个&#xff0c;有需要租鞋的n…

可视化Java 9模块关系

正如我在之前的文章中所述 &#xff0c;我已经在Java 9 Jigsaw构建上运行Eclipse Neon了一段时间&#xff0c;并且没有任何问题。 我在周末花费了几个小时来修改一些模块化工具的想法。 我为Eclipse Neon写了一个小插件&#xff0c;可视化了各个模块之间的连接。 现在的实现…

matlab怎么整合成一个模块,Matlab如何将m文件制定成模块

代码拷过去&#xff01;可以运行了&#xff0c;记得参数设置界面什么也不用加&#xff01;初始输入记得加入&#xff0c;不然你的S模块会报错&#xff0c;因为你有个reallog函数&#xff01;function [sys,x0,str,ts] guangfu(t,x,u,flag)switch flag,case 0,[sys,x0,str,ts]m…

使用EF Oracle实现DevExpress绑定大数据的ServerMode模式

前提&#xff1a;需要引入EntityFramework组件&#xff0c;注意几个使用点后使用上其实比较简单。 一、引入Oracle EF支持组建 1、可手动引入附件中的DLL&#xff08;需手动合并web.config配置&#xff09; 2、也可使用NuGet的安装方式&#xff0c;安装时会自动合并配置到web.c…