首先用Interface Builder做出一个简单的计算器图形:
先再.h文件中定义好输出口,全局变量还有方法
@interface calculatorViewController : UIViewController {
IBOutlet UITextField *textField;
int number;
BOOL function;
BOOL isFlage;
BOOL isResult;
BOOL isAgain;
BOOL isPress;
NSString *num;
NSString *nums;
int TEMP;
}
@property(retain,nonatomic)UITextField *textField;
- (IBAction)buttionPressed:(id)sender;
- (void)plus:(id)sender:(NSString *)value;
- (void)minus:(id)sender:(NSString *)value;
- (void)multiple:(id)sender:(NSString *)value;
- (void)divide:(id)sender:(NSString *)value;
- (void)clearshow:(id)sender:(int)value;
@end
连接好输出口,按下Ctrl键并从file's Owner中拖到text框中选择好合适的textfield输出口
之后要注意file's Owner的链接,按住ctrl从file's Owner拖到要显示的窗口,再选中要控制按钮,再按花+2键在里面找到touch up inside,点住后面的圆点拖到file's Owner中,按钮依次照做。
再在.m文件中写入方法:首先是buttonpressed方法,里面有对按钮的识别和每个运算方法的调用。
- (IBAction)buttionPressed:(id)sender{
if (!isFlage) {
num = [sender titleForState:UIControlStateNormal];
nums = [[NSString alloc] initWithFormat:@"%@%@",textField.text,num];
textField.text = nums;
}else {
if (!isPress) {
isFlage=FALSE;
num = [sender titleForState:UIControlStateNormal];
nums = [[NSString alloc] initWithFormat:@"%@",num];
textField.text = nums;
}
}
[self plus:sender:nums];
[self minus:sender:nums];›
[self multiple:sender :nums];
[self divide:sender :nums];
[self clearshow:sender:number];
if ([num isEqualToString:@"="]) {
isPress=TRUE;
isFlage=TRUE;
switch (TEMP) {
case 1:
number=number+[nums intValue];
textField.text=[NSString stringWithFormat:@"%d",number];
isResult=TRUE;
break;
case 2:
number=number-[nums intValue];
textField.text=[NSString stringWithFormat:@"%d",number];
isResult=TRUE;
break;
case 3:
number=number*[nums intValue];
textField.text=[NSString stringWithFormat:@"%d",number];
isResult=TRUE;
break;
case 4:
number=number/[nums intValue];
textField.text=[NSString stringWithFormat:@"%d",number];
isResult=TRUE;
break;
default:
break;
}
}
}
之后就是对每个运算方法的调用。这里举一个加法的例子,其他运算方法套用即可,还有一个清零的方法- (void)plus:(id)sender:(NSString *)value{
num = [sender titleForState:UIControlStateNormal];
if ([num isEqualToString:@"+"]) {
TEMP=1;
isPress=FALSE;
isFlage=TRUE;
if (isResult) {
function=FALSE;
}
if (!function) {
number=number+[value intValue];
}else{
function=TRUE;
isResult=FALSE;
number=[value intValue];
}
textField.text=[NSString stringWithFormat:@"%d",number];
}
}
- (void)clearshow:(id)sender:(int)value{
num = [sender titleForState:UIControlStateNormal];
if ([num isEqualToString:@"Clear"]) {
number=0;
isFlage=FALSE;
textField.text=[NSString stringWithFormat:@"%d",number];
}
}
功能并不是很多,主要是运用到了一些基本的知识。自己需要注意的是字符串的连接
nums = [[NSString alloc] initWithFormat:@"%@%@",textField.text,num];
还有int型转化为string型:textField.text=[NSString stringWithFormat:@"%d",number];
string型转化为int型:[value intValue];
- 大小: 23.9 KB
- 大小: 32.5 KB
- 大小: 30.8 KB
- 大小: 43.8 KB
- 大小: 83.2 KB
分享到:
相关推荐
本资源是以Microsoft visual studio 2015为平台,用C语言编写的(基于栈、对列)的简易计算器(初学者可用)
1、该图书管理系统有三种操作权限:管理员、用户和游客,对应不同的操作界面; ... 3、采用链表进行操作,方便理解; 4、采用冒泡排序,可以读者自己拓展快排,选择等等; 5、可以实现改变字体颜色,封装成函数,方便...
java初学者——IDEA——SSM项目环境搭建
OpenGL初学者——OpenGL的程序框架.rar
拥有多个C语言的实用练习题,适合于初学者自己练习,有助于基础知识的巩固。
该题库对于c的初学者来说受益颇多,而且对于c的期末机试也是十分有用……
C#编写 简易计算器 供初学者真学习使用,简单的小程序
使用X-code软件在Mac OS下开发的入门级计算器,能实现加减乘除和清零,适合Objective-c初学者
PS图层样式初学者必读——颜色叠加、渐变叠加、图案叠加.pdfPS图层样式初学者必读——颜色叠加、渐变叠加、图案叠加.pdfPS图层样式初学者必读——颜色叠加、渐变叠加、图案叠加.pdfPS图层样式初学者必读——颜色叠加...
初学者编写的,比较简单。主要是简单的语句编写。 有高手请指点一下。本人将非常感谢。
初学者开发的C语言简易计算器,仅供参考和交流
课程设计——C语言编写的简易书店管理系统。功能有:图书列表、图书入库、图书销售、图书保存、书店简介、图书查询、图书删除等。内包括源码以及EXE文件。源码备注清晰。支持二次开发。适合初学者,不懂可直接私信我...
这是一款用C#编写的简易计算器,功能比较简单,很适合初学者使用,代码思路很清晰易懂,希望能给大家带来收获
基于LabVIEW编写的简易计算器,初学者适合看看研究,源码文件
java初学者适用——java实例大全 java初学者适用——java实例大全 java初学者适用——java实例大全
C语言仿windows计算器,实现基本计算逻辑,适合初学者借鉴参考
自己学Android没几天,这些代码风格是以初学者的风格,大神们勿喷。
C# 简易计算器源码-非常适合初学者学习,C# 简易计算器源码-非常适合初学者学习,C# 简易计算器源码-非常适合初学者学习,重要的事情说三遍
用Java编写的简单计算器实现,作为一般的练习作用,希望能给同是初学者的Java爱好者们一些参考和帮助...
第一次使用proteus,仿真简易频率计,即测试实际频率,用汇编语言编写