用Object-C写的一个简单的计算机程序,主要学习按钮的action动作。

以下是主界面:

以下代码时界面按钮和ViewController.h连接的地方:

- (IBAction)button_0:(UIButton *)sender;
- (IBAction)button_dian:(UIButton *)sender;
- (IBAction)button_dengyu:(UIButton *)sender;
- (IBAction)button_1:(UIButton *)sender;
- (IBAction)button_2:(UIButton *)sender;
- (IBAction)button_3:(UIButton *)sender; - (IBAction)button_4:(UIButton *)sender;
- (IBAction)button_5:(UIButton *)sender;
- (IBAction)button_6:(UIButton *)sender;
- (IBAction)button_7:(UIButton *)sender;
- (IBAction)button_8:(UIButton *)sender;
- (IBAction)button_9:(UIButton *)sender;
- (IBAction)button_jia:(UIButton *)sender;
- (IBAction)button_jian:(UIButton *)sender;
- (IBAction)button_cheng:(UIButton *)sender;
- (IBAction)button_chu:(UIButton *)sender;
@property (weak, nonatomic) IBOutlet UITextField *result;

以下在ViewController.m中来写按钮的点击事件:


- (IBAction)button_0:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"0"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; } - (IBAction)button_dian:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"."];
self.result.text = [NSString stringWithFormat:@"%@",newString];
} - (IBAction)button_dengyu:(UIButton *)sender {
NSString *resString = self.result.text;
double sum;
if([strOperator isEqualToString:@"+"]){
sum = [str doubleValue] + [resString doubleValue];
self.result.text =[NSString stringWithFormat:@"%f",sum];
}else if([strOperator isEqualToString:@"-"]){
sum = [str doubleValue] - [resString doubleValue];
self.result.text =[NSString stringWithFormat:@"%f",sum];
}else if([strOperator isEqualToString:@"+"]){
sum = [str doubleValue] * [resString doubleValue];
self.result.text =[NSString stringWithFormat:@"%f",sum];
}else if([strOperator isEqualToString:@"+"]){
sum = [str doubleValue] / [resString doubleValue];
self.result.text =[NSString stringWithFormat:@"%f",sum];
}
} - (IBAction)button_1:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"1"];
self.result.text = [NSString stringWithFormat:@"%@",newString];
}
- (IBAction)button_2:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"2"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; }
- (IBAction)button_3:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"3"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; } - (IBAction)button_4:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"4"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; }
- (IBAction)button_5:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"5"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; }
- (IBAction)button_6:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"6"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; }
- (IBAction)button_7:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"7"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; }
- (IBAction)button_8:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"8"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; }
- (IBAction)button_9:(UIButton *)sender {
NSString *resString = self.result.text;
NSString *newString = [resString stringByAppendingString:@"9"];
self.result.text = [NSString stringWithFormat:@"%@",newString]; }
- (IBAction)button_jia:(UIButton *)sender {
str = self.result.text;
strOperator = @"+";
self.result.text = [NSString stringWithFormat:@" "]; }
- (IBAction)button_jian:(UIButton *)sender {
str = self.result.text;
strOperator = @"-";
self.result.text = [NSString stringWithFormat:@" "];}
- (IBAction)button_cheng:(UIButton *)sender {
str = self.result.text;
strOperator = @"*";
self.result.text = [NSString stringWithFormat:@" "];
}
- (IBAction)button_chu:(UIButton *)sender {
str = self.result.text;
strOperator = @"/";
self.result.text = [NSString stringWithFormat:@" "];}

注意这里的str 和strOperator在ViewController.h中声明的:

 NSString *strOperator;
NSString *str;

这就完毕了一个简单的计算器~

IOS开发之简单计算器的更多相关文章

  1. IOS开发之简单音频播放器

    今天第一次接触IOS开发的UI部分,之前学OC的时候一直在模拟的使用Target-Action回调模式,今天算是真正的用了一次.为了熟悉一下基本控件的使用方法,和UI部分的回调,下面开发了一个特别简易 ...

  2. iOS开发-UINavigationController简单介绍

    导航条或者说导航栏目现在在App中基本上也算是标配,类似于父子级别的味道在里面,UINavigationController就是负责简化这一实现功能的,属于iOS开发中比较常用的一种容器View co ...

  3. iOS开发-UIActivityIndicatorView简单使用

    软件开发的时候经常会遇到半天才加载出来数据的情况,不管是程序写的烂,还是说本来网速比较慢,一般都都会给个提示让用户感觉到我们在努力的加载数据,iOS可以通过UIActivityIndicatorVie ...

  4. iOS开发-UIActionSheet简单介绍

    UIActionSheet和UIAlertView都是ios系统自带的模态视图,模态视图的一个重要的特性就是在显示模态视图的时候可以阻断其他视图的事件响应.一般情况下我们对UIAlertView使用的 ...

  5. IOS做一个简单计算器

    //声明非原创 步骤: 1.打开Xcode,单机Creat a new Xcode project 2.左边选择ios下Application,右边选择single view Application ...

  6. ios开发之--简单动画效果的添加

    记录一个简单的动画效果,自己写的,很简单,仅做记录. 附一个demo的下载地址: https://github.com/hgl753951/hglTest.git 代码如下: 1,准备 BOOL _i ...

  7. iOS开发--录音简单实现

  8. [分享]IOS开发-简单实现搜索框显示历史记录的本地缓存及搜索历史每次只能获取到一个的解决方案

    注:原文:http://www.zhimengzhe.com/IOSkaifa/40433.html 1.首先,我们需要对进行过搜索的textField的输入内容进行一个NSUserDefaults的 ...

  9. IOS开发-手势简单使用及手势不响应处理办法

    1.点击 2.长按 3.拖拽 4.轻扫.捏合.旋转 5.使用手势需要注意的地方 1.注意处理轻扫和拖拽的冲突 //那个时间短的话 就让那个先执行 //处理 拖拽和轻扫 两个手势的冲突 //需要轻扫手势 ...

随机推荐

  1. Python学习 Day 1-简介 安装 Hello world

    简介 Python(英语发音:/ˈpaɪθən/), 是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年,Python 源 ...

  2. sysbench下载安装

    涉及到sysbench源码的配置和编译,首先确认系统安装了gcc gcc-c++编译器:确认安装了autoconf .automake.libtool等:[root@PC download]# rpm ...

  3. css 最高权重 !important;

    border-top: 1px solid #ccc !important;

  4. CAD交互绘制带周长面积的矩形框(com接口)

    主要用到函数说明: _DMxDrawX::DrawLine 绘制一个直线.详细说明如下: 参数 说明 DOUBLE dX1 直线的开始点x坐标 DOUBLE dY1 直线的开始点y坐标 DOUBLE ...

  5. Oracle数据库单表循环提取输出

    现在有如下的表,名称为Test表: ydid            sws_dm          sws_mc           ry_dm    ry_mc 1              1   ...

  6. BZOJ 4464 旅行时的困惑 最小流

    题面: Waldives 有 N 个小岛.目前的交通系统中包含 N-1 条快艇专线,每条快艇 专线连接两个岛.这 N-1条快艇专线恰好形成了一棵树. 由于特殊的原因,所有N-1条快艇专线都是单向的.这 ...

  7. CF1065D Three Pieces

    题目描述:给出一个n*n的棋盘,棋盘上每个格子有一个值.你有一个子,要求将这个子从1移到n*n(去k时可以经过比k大的点). 开局时它可以作为车,马,相(国际象棋).每走一步耗费时间1.你也可以中途将 ...

  8. galera cluster安装与配置

    由于公司数据量与并发的日渐增大,普通的主从复制已无法满足要求.对比了网上PXC.galera.mysql cluster等方案,最终决定选择galera cluster. 以下为安装步骤: 1.下载g ...

  9. 集训第五周动态规划 I题 记忆化搜索

    Description Michael喜欢滑雪百这并不奇怪, 因为滑雪的确很刺激.可是为了获得速度,滑的区域必须向下倾斜,而且当你滑到坡底,你不得不再次走上坡或者等待升降机来载你.Michael想知道 ...

  10. 细说php第八章笔记(初稿)

    8.1 函数的定义      函数是被命名的:      函数是独立的:      函数执行特定的任务:      函数可以用将一个返回值返回给调用他的程序 函数的优越性      提高程序的重用性 ...