IOS开发之简单计算器

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

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

时间: 2024-08-07 21:18:17

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

IOS开发之简单音频播放器

今天第一次接触IOS开发的UI部分,之前学OC的时候一直在模拟的使用Target-Action回调模式,今天算是真正的用了一次.为了熟悉一下基本控件的使用方法,和UI部分的回调,下面开发了一个特别简易的音频播放器,来犒劳一下自己这一天的UI学习成果.在用到UI的控件时如果很好的理解之前博客在OC中的Target-Action回调模式,感觉控件的用法会很顺手.下面的简易播放器没有用到多高深的技术,只是一些基本控件和View的使用. 话不多说简单的介绍一下今天的音频播放器.在播放器中我们用到了UIP

iOS开发-UINavigationController简单实现

导航条或者说导航栏目现在在App中基本上也算是标配,类似于父子级别的味道在里面,UINavigationController就是负责简化这一实现功能的,属于iOS开发中比较常用的一种容器View controller,很多人都用,实现起来相对比较容易,可以先看张图片了解NavigationController: 界面布局 上面看着很高大上,下面看个个人的,从控件库中拖入一个Navigation Controller,然后新建两个ViewController: 拖入的一个NavigationCon

iOS开发-UIActivityIndicatorView简单使用

软件开发的时候经常会遇到半天才加载出来数据的情况,不管是程序写的烂,还是说本来网速比较慢,一般都都会给个提示让用户感觉到我们在努力的加载数据,iOS可以通过UIActivityIndicatorView实现类似的效果.UIActivityIndicatorView提供轻型视图,会显示一个标准的旋转进度轮,只要添加到程序中,在合适的地方start和stop即可.start的时候可以吸附在当前视图中,stop的时候就会移除~ 简答的效果: 实现方式如下: self.activityIndicator

iOS开发-UIActionSheet简单介绍

UIActionSheet和UIAlertView都是ios系统自带的模态视图,模态视图的一个重要的特性就是在显示模态视图的时候可以阻断其他视图的事件响应.一般情况下我们对UIAlertView使用的比较多,UIActionSheet相对来说情况少一点,偶尔作为一个上拉菜单来展示还是非常有用的.通常如果显示一个模态的视图,可以自定义一个UIViewController,不过里面的内容和动画实现起来工作量还是非常多的. UIActionSheet介绍 介绍UIActionSheet之前需要简单的看

iOS开发 -- 实现简单的定位功能

一.定位的说明 现在的应用很多都拥有定位功能.确实,定位功能是很好用的,对我们的生活也有很大的帮助.例如帮你找酒店,找银行等等... 要实现定位有三种方式:   1. 手机基站:(依赖于手机机战(信号塔)的密集程度)  2. GPS:卫星定位,精确度高,但是费电     3. WIFI:根据上网的IP地址,(必须要能上网) 而我们开发中一般都是用GPS定位比较多,我们要实现定位需要用到CoreLocation框架,CoreLocation中主要包含了定位.地理编码(包括反编码)功能. 在iOS8

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

记录一个简单的动画效果,自己写的,很简单,仅做记录. 附一个demo的下载地址: https://github.com/hgl753951/hglTest.git 代码如下: 1,准备 BOOL _isOpen; NSMutableArray * _btnArray; 2,具体代码 -(void)initUI { _btnArray = [[NSMutableArray alloc]init]; for (int i=0; i<4; i++) { UIButton * btn = [UIButt

Swift开发之简单计算器项目

// //  ViewController.swift //  计算器 // //  Created by 悦兑科技 on 15/1/14. //  Copyright (c) 2015年 BSY. All rights reserved. // import UIKit class ViewController: UIViewController { var numOne = UITextField() var numTwo = UITextField() var cleanButton =

初学iOS开发之简易计算器

今天学了下一个简易计算器,自己做时遇到了忘记把textfield代理给View Controller,导致按回车键时不能自动跳转到下一行输入,具体代理如下图所示. 在此步骤后,在ViewController.h添加<UITextfieldDelegate>具体添加如下图. 在添加代理模式后,在ViewController.m 添加下面的代码,就可以实现输入完后按回车键换行.

IOS做一个简单计算器

//声明非原创 步骤: 1.打开Xcode,单机Creat a new Xcode project 2.左边选择ios下Application,右边选择single view Application 3.填写项目名称单机Next 4.ViewController.h中定义成员和方法 // // ViewController.h // TestCalculator4 // // Created by heyonggang on 13-11-28. // Copyright (c) 2013年 Mi