首先用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
分享到:
相关推荐
本教程不仅提供了制作计算器软件的具体步骤,还涵盖了Objective-C编程的基础知识,对于初学者来说是一次很好的学习机会。通过实际操作,可以加深对理论知识的理解,并为将来开发更复杂的iOS应用打下坚实的基础。
【标题解析】 ...综上所述,这个压缩包文件提供了一个深入了解iOS应用开发、房贷计算器实现以及代码改进过程的机会,无论是对于初学者还是经验丰富的开发者,都能从中学习到很多实用的知识和技巧。
根据提供的文件信息,我们可以推断出这是一本关于Objective-C编程语言的专业书籍——《Objective-C程序设计_第4版》。接下来,我们将基于这个信息,深入探讨与该书相关的几个重要知识点。 ### 1. Objective-C简介 ...
【简易计算器】是一款基于Xcode 3.2开发的iOS应用程序,旨在提供基本的计算功能。...同时,对于初学者来说,这是一个很好的练习,可以帮助理解和掌握Objective-C编程语言以及iOS应用开发的基本流程。
### Objective-C编程(第6版) —— Programming in Objective-C #### 书籍概述 《Objective-C编程(第6版)》是由Stephen G. Kochan编写的权威指南,旨在为程序员提供学习Objective-C语言所需的全部基础知识。该书由...
本教程旨在为初学者提供Objective-C的基础知识,帮助他们理解和掌握这种强大的编程工具。 首先,我们来了解一下Objective-C的基本结构。Objective-C是在C语言的基础上扩展的,它引入了消息传递机制,使得对象间的...
《Objective C Programming The Big Nerd Ranch Guide 2nd Edition》是一本专为初学者设计的Objective-C编程指南,由Big Nerd Ranch团队精心编写。这本书以其清晰易懂的风格和丰富的实践案例,深受广大程序员的喜爱...
本文将深入探讨一款基于Objective-C开发的TCP/IP客户端通讯命令行程序——SocketTool。该程序的设计目的是为了演示如何使用Socket进行网络通信,适用于想要了解网络编程基础和TCP/IP协议栈的开发者。 SocketTool...
- **Objective-C 应用程序开发基础** —— Coursera提供了一门名为“Objective-C 应用程序开发基础”的课程,适合初学者入门。 - **计算机编程语言:Objective-C** —— [Computer Programming Languages: ...
描述中的信息与标题一致,再次强调这是一个简单的滤镜应用,意味着它的设计和实现可能相对基础,适合初学者或者希望了解滤镜处理技术的开发者进行学习。 标签“IOS”和“ios 源码”进一步确认了这是iOS开发相关的源...
《Objective-C基础教程(中文版)》正是针对初学者,通过通俗易懂的语言讲解这一技术。 本书首先会介绍Objective-C的基础知识,包括语法结构、变量和数据类型、运算符以及控制流程语句。Objective-C中的主要特色——...
综上所述,Objective-C基础教程覆盖了从入门到进阶的多个方面,适合Objective-C初学者系统学习该语言。通过掌握以上知识点,开发者可以更好地理解和应用Objective-C,在实际项目开发中发挥其强大的功能。
本资源“IOS应用源码——一个很简单的滤镜应用.rar”提供了一个基础的滤镜应用源代码,这对于初学者理解iOS图像处理和滤镜应用的实现原理非常有帮助。下面将详细探讨相关的知识点。 首先,iOS应用开发主要使用...
《啊哈C语言ahaC-C++3.0.zip——初学者的C++编程之路》 在编程的世界里,C++是一门重要的基础语言,对于初学者或是希望引导孩子们接触编程的人来说,选择合适的工具至关重要。"啊哈C语言ahaC-C++3.0.zip"就是这样一...
无论您是初学者还是有一定编程基础的开发者,本书都能为您提供必要的指导和支持。 #### 三、主要内容 1. **Objective-C语言基础**:本书首先介绍了Objective-C的基础语法,包括变量声明、数据类型、控制结构等,为...
- **Objective-C简介**:本书为初学者提供了深入浅出的Objective-C介绍,无需预先掌握面向对象编程语言或C语言的基础。 - **编程入门**:通过实例介绍如何编写基本的Objective-C程序,包括变量、数据类型、运算符等...
这表明本书可能不是面向初学者,而是针对有一定基础的iOS开发者,他们可能已经熟悉了Cocoa和Objective-C的基本概念,正在寻找深入学习和提升的机会。 标签“ios”进一步确认了本书的专注领域,即iOS开发。虽然标题...
首先,我们需要知道iOS应用开发主要使用Objective-C或Swift语言,而这个项目可能是用Objective-C编写的,因为Swift在近几年才成为主流,而“QQ_TableView”的命名方式更符合Objective-C的编程习惯。TableView是iOS...
首先,我们要了解的是iOS游戏的基础——Objective-C或Swift编程语言。"jrcdude-Helicopter"项目可能是用Objective-C编写的,因为早期的iOS开发主要使用此语言。Objective-C是C语言的超集,添加了面向对象编程特性,...