iOS实现带历史记录功能的计算器

news/2024/11/29 18:26:56/

最近想检验一下自己学习iOS3个月以来知识的掌握情况,所以决定自己动手编写一个简单的计算器app。考查了市面上的大多数计算器应用,发现都不能满足“回顾之前的计算结果”的功能,而我觉得这个功能还挺有需求的,因此决定自己加入这个功能!

废话不多说啦,经过努力,终于把自己的第一个完整的app写出来啦!以下是截图:


计算器确实是一个很简单的app,界面一共就3个,一个计算器视图,一个历史记录视图以及一个用来切换的navigation bar。其中,计算器视图就是用一个简单的view controller实现;历史记录视图是由table view controller实现,将其data source和delegate设为计算器视图控制器;再将它们用一个navigation controller进行管理,切换即可。

计算器视图控制器里添加了面板上的所有按钮,用来读取用户输入,以及显示面板,用来显示用户输入和运算结果。将用户的输入和运算结果保存到自己的实例变量中,然后一方面在显示面板中显示,另一方面作为历史记录视图的数据显示在table view中。

界面比较简单,但逻辑实现还是比较复杂的。要考虑用户按不同顺序按下按钮,计算器的行为应当是不一样的,比如什么时候输入的是第一个数,什么时候输入的是第二个数,当一次计算完成后按运算符号应当直接进行连续计算,等等。因此,我设置了两个提示状态的属性:shoudRefresh,inputFirstNumber,用来标记目前计算器所处的状态。整体的app的基本逻辑如下图:



除了逻辑之外,另一个遇到的难题是确定结果的保留位数。因为系统的数据类型float是不精确的,因此会出现例如5.2+1.8=7.0000001这种情况。最后的解决办法是,记录用户输入的两个数的小数位数,取其大者作为最终的结果精度。然后对结果用decimalNumber的四舍五入函数进行保留。

虽然是一个很小的app,但作为第一个完整的工作还是很有收获的。多动脑,多写代码,多查阅文档,多积累知识,才能得心应手。


移步至github下载:https://github.com/YangGao1991/calculator-with-history-record.git



http://www.ppmy.cn/news/559638.html

相关文章

web网页版苹果计算器(HTML、CSS、JavaScript实现)

目录 一、效果截图 二、注意事项 三、源码实现 1、html 2、css 3、js 一、效果截图 二、注意事项 1、html结构上,分为三个部分:显示区、按钮区、底部白条 2、css样式上 需要解决外边距重叠的问题,可用overflow: hidden; 点击高亮效果…

win10计算器需要新应用打开此calculator/calc

win10计算器需要新应用打开此calculator 第1步: 点击 "开始 ,找到"Windows PowerShell" ,然后单击右键。 第2步:选择“以管理员身份运行” 第3步:输入下面指令 Get-AppXPackage -AllUsers | Foreach {Add-AppxP…

怎么打开苹果Mac电脑科学型计算器

苹果Mac电脑如何开启科学型计算器?mac系统和windows系统一样都有一个计算器,而且MAC系统计算器除了可以计算一些普通的数据外,还可以计算一些复杂的数据。下面我们就来看一下怎么打开MAC电脑科学计算器。 第一步:首先&#xff0c…

android计算器(按钮版)

需求分析 计算器的界面分为两大部分,第一部分是上方的计算表达式,既包括用户的按键输入,也包括计算结果数字;第二部分是下方的各个按键,例如:从0到9的数字按钮、加减乘除与等号、正负号按钮、小数点按钮、求…

win10自带计算机在哪,win10系统自带计算器功能在哪里

windows10系统 具有十分强大的功能,吸引了不少用户。不过,最近一些朋友表示找不到windows10系统自带的计算器功能,这该怎么办呢?我们要如何操作呢?下面,小编就为大家分享win10系统自带计算器功能的打开方法…

请问怎么设置默认浏览器

在 Windows 操作系统上,您可以按照以下步骤设置默认浏览器: 打开“设置”应用程序。点击“应用”。在左侧菜单中选择“默认应用程序”。找到“Web 浏览器”选项,并单击它。选择您想要设置为默认浏览器的应用程序。 在 macOS 操作系统上&#…

Mac 默认浏览器设置

打开‘系统偏好设置’->‘通用’->‘默认网页浏览器’,选择默认浏览器

能计算x的计算机软件,访问Mac OS X中的科学计算器程序员计算器 | MOS86

Mac计算机应用程序乍一看可能会有些限制,但实际上还有其他两个计算器模式包含在应用程序中;一个全功能的科学计算器,还有一个程序员计算器。 在OS X中访问备用计算器真的很简单,但像许多其他有趣的计算器应用程序功能一样,它很容易…