【发布时间】:2012-11-26 22:39:03
【问题描述】:
我正在制作一个计算器应用程序,并想制作两个记忆功能按钮
(“添加到记忆”或“记住”和“显示记住的”或“告诉”)
我在主标签上获取当前值的方式是
double currentValue = [screenLabel.text doubleValue];
基本上,我怎样才能获得某种可以让我制作的内存缓存
第一个按钮,清除其缓存的特殊内存,读取标签并根据需要存储它,但不是永久的
第二个按钮,从缓存中读取存储的值并显示它,如果没有存储值则显示 0
?
【问题讨论】:
-
您的问题到底是什么?您几乎不希望我们编写您的代码。一定有一些特定的问题,或者可能是其中的一些问题。你不知道如何将按钮与方法关联起来,以便在按下按钮时执行一些代码吗?或者您不知道如何存储一些代表计算器内存值的数字?还是不知道如何设置标签的文字?
-
@ValKalinic - 你的问题还不清楚。你想要的东西在你的程序中存储一个值但不是永久的并且从零开始,
double memoryValue = 0;显然是这样做的,所以这可能不是你要问的。 -
对不起,我仍然没有得到你想要的。因此,即使应用程序终止并稍后重新启动,您也在寻找能够保留其内容的持久存储?您要存储的只是这个数字?
-
@ValKalinic 顺便说一句,您问的是计算器上的“记忆”按钮:但是,如果您对此有疑问,我真的很想知道您如何处理一系列用户输入,例如“2 + 8 * 5”。正确答案是 42(因为您保存 2,乘以 8 乘以 5,然后将两者加回乘积)。从
UILabel获取值是行不通的。您需要丰富的模型结构来存储此类信息。如果你支持像“6 * (5 + (7 / (4.5 - 1)))”这样的计算,它会变得更加有趣,这很快就会需要像 nmock 的堆栈概念这样的东西。 -
@Rob,我猜 Val 正在尝试扩展他的第一个教程/示例代码并试图找到这种方式,尽管它没有理解一些 Objective-c 的基础知识。如果我是对的,那么您在下面的答案就是他正在寻找的答案,而 CRD 的答案也指向了正确的方向。 Life2Enjoy7 的答案太过分了(我的观点)。但是一个 NSDictionary 可以用作一些快速n-dirty的方式来使一个或手充满数据的持久性。我正在考虑 writeToFile 和 dictionaryWithContentsOfFile 方法。
标签: objective-c ios calculator