iOS开发实现简单计算器功能

 更新时间:2022年1月27日 16:59  点击:860 作者:Qu_qipa

用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;

这就完成了一个简单的计算器。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持猪先飞。

原文出处:https://blog.csdn.net/Quzhiyu_rjgcs/article/details/47749265

[!--infotagslink--]

相关文章

  • MySQL性能监控软件Nagios的安装及配置教程

    这篇文章主要介绍了MySQL性能监控软件Nagios的安装及配置教程,这里以CentOS操作系统为环境进行演示,需要的朋友可以参考下...2015-12-14
  • iOS APP h5快捷程序 .mobileconfig的生成

    1.从APP Store 下载Apple Configurator 2从一个管理点管理所有iOS设备应用程序,文档和配置文件。想要确保您的所有家庭成员在其每台iOS设备上都有类似的应用和文档,管理日益增...2021-12-23
  • iOS设置UIButton文字显示位置和字体大小、颜色的方法

    这篇文章给大家分享了iOS如何设置UIButton的文字显示位置和字体的大小、颜色,文中给出了示例代码,相信对大家的学习和理解很有帮助,有需要的朋友们下面来一起看看吧。...2020-06-30
  • iOS如何将图片裁剪成圆形

    这篇文章主要为大家详细介绍了iOS如何将图片裁剪成圆形,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-30
  • iOS给border设置渐变色的方法实例

    这篇文章主要给大家介绍了关于iOS给border设置渐变色的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-09
  • iOS新版微信底部返回横条问题的解决

    这篇文章主要介绍了iOS新版微信底部返回横条问题的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-30
  • C#实现简易计算器功能(附源码)

    这篇文章主要为大家详细介绍了C#实现简易计算器,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-21
  • vue+axios全局添加请求头和参数操作

    这篇文章主要介绍了vue+axios全局添加请求头和参数操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-24
  • iOS蓝牙设备名称缓存问题的解决方法

    这篇文章主要给大家介绍了关于iOS蓝牙设备名称缓存问题的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-08
  • iOS新版微信底部工具栏遮挡问题完美解决

    这篇文章主要介绍了iOS新版微信底部工具栏遮挡问题完美解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-30
  • iOS新增绘制圆的方法实例代码

    这篇文章主要给大家介绍了关于iOS新增绘制圆的方法,文中通过示例代码介绍的非常详细,对各位iOS开发者们具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧...2020-06-30
  • iOS UIBezierPath实现饼状图

    这篇文章主要为大家详细介绍了iOS UIBezierPath实现饼状图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-03-20
  • 封装 axios+promise通用请求函数操作

    这篇文章主要介绍了封装 axios+promise通用请求函数操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-12
  • IOS获取各种文件目录路径的方法

    ios获取文件路径的方法,iphone沙箱模型的四个文件夹,通过documents,tmp,app,Library得到模拟器路径的简单方式,下面小编整理相关资料,把IOS获取各种文件目录路径的方式总结如下,需要的朋友可以参考下...2020-06-30
  • iOS UICollectionView实现卡片效果

    这篇文章主要为大家详细介绍了iOS UICollectionView实现卡片效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-30
  • Vue中 axios delete请求参数操作

    这篇文章主要介绍了Vue中 axios delete请求参数操作,具有很好的参考价值,希望对大家有所 帮助。一起跟随小编过来看看吧...2020-08-26
  • iOS实现电子签名

    这篇文章主要为大家详细介绍了iOS实现电子签名,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-12-08
  • 小程序实现计算器功能

    这篇文章主要为大家详细介绍了小程序实现计算器功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-19
  • C# WinForm程序设计简单计算器

    这篇文章主要为大家详细介绍了C# WinForm程序设计简单计算器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
  • Vue使用axios引起的后台session不同操作

    这篇文章主要介绍了Vue使用axios引起的后台session不同操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-14