编程语言基础:objective-c基础语法

编程工具:Xcode4.6

第一步:打开Xcode,选择下面的Create a new Xcode projectd

第二步:选中如图,点Next进入下一步

第三步:填写产品名称、公司标识,选iPhone

第四步:选择项目放的位置,自己随便选个文件,create进入下一步

第五步:进入编程界面,开始界面布局,拖放相关按钮(也可按住option键点击已有按钮复制)和一个文本框

第六步:在ViewController.h代码里面添加代码如下

#import <UIKit/UIKit.h>@interface ViewController : UIViewController
{NSMutableString *sNum1; //操作数一NSMutableString *sNum2; //操作数二NSString *sOpt;    //操作符号记录int iSum; //计算结果
}
@property(nonatomic,assign) IBOutlet UITextField *calcResult; //计算结果输出框-(IBAction)BtnClick:(id)sender; //按钮触发事件
@end

源文件ViewController.m添加

- (IBAction)BtnClick:(id)sender
{
}

第七步:点开第五步所指的xib可视编程界面,进入后选中File's Owner,右击,操作如下

a.在右击的出现的菜单中看到头文件声明的calcResult,按下键盘的Option建,点击图上那个圆圈,鼠标同时左击按下拖动连接到界面的文本框

b.按钮事件,也是左击出现如下菜单后,根据头文件里面的声明按钮事件方法BtnClick,按a步骤里面方法拖动到按钮上,然后选中按钮出现的选项(Touch up Inside)--代表按钮按下,这样就会当按钮按下时,触发按钮事件BtnClick.

第八步:编写代码如下

//
//  ViewController.m
//  Calculator
//
//  Created by wyz on 13-10-17.
//  Copyright (c) 2013年 wyz. All rights reserved.
//#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (IBAction)BtnClick:(id)sender
{NSString* strInput = [sender currentTitle];NSLog(@"NowOpt=(%@)",strInput);if([strInput isEqualToString:@"="]){NSLog(@"wyz====xxx");NSLog(@"wyz===end=(%@)===num1=%@,num2=%@",sOpt,sNum1,sNum2);if([sOpt isEqualToString:@"+"]){iSum = [sNum2 integerValue] + [sNum1 integerValue];}else if ([sOpt isEqualToString:@"-"]){iSum = [sNum2 integerValue] - [sNum1 integerValue];}else if ([sOpt isEqualToString:@"*"]){iSum = [sNum2 integerValue] * [sNum1 integerValue];}else if ([sOpt isEqualToString:@"/"]){iSum = [sNum2 integerValue] /[sNum1 integerValue];}[sNum1 setString:@""];sNum2 = [NSMutableString stringWithFormat:@"%d",iSum];NSLog(@"wyz========result=%@",sNum2);_calcResult.text = sNum2;[sNum2 retain];// NSLog(@"wyz========result2=%@");return;}if([strInput isEqualToString:@"CE"]){_calcResult.text = nil;iSum = 0;[sNum1 setString:@""];[sNum2 setString:@""];return;}if([strInput isEqualToString:@"Back"]){if([sNum1 isEqualToString:@""]){return;}[sNum1 deleteCharactersInRange:NSMakeRange([sNum1 length]-1, 1)];if([sNum1 length] == 0){_calcResult.text = @"0";return;}_calcResult.text = sNum1;return;}if([strInput isEqualToString:@"/"] || [strInput isEqualToString:@"*"] || [strInput isEqualToString:@"-"] || [strInput isEqualToString:@"+"]){NSLog(@"wyz====1");sOpt = strInput;NSLog(@"wyz====12(%@)",sOpt);if([self->sNum1 length] !=0){NSLog(@"wyz====13");[sNum2 setString:sNum1];  //内容赋值//self.sNum2 = self.sNum1;  //指针赋值}NSString *ss = sNum2;NSLog(@"wyz====14=%@",sNum2);_calcResult.text = ss;NSLog(@"wyz====15");[sNum1 setString:@""];NSLog(@"wyz====16");NSLog(@"wyz===opt(%@)===num1=%@,num2=%@",sOpt,sNum1,sNum2);return;}if([strInput isEqualToString:@"1"] || [strInput isEqualToString:@"2"] || [strInput isEqualToString:@"3"] || [strInput isEqualToString:@"4"] || [strInput isEqualToString:@"5"]||[strInput isEqualToString:@"6"] || [strInput isEqualToString:@"7"]||[strInput isEqualToString:@"8"] || [strInput isEqualToString:@"9"]||[strInput isEqualToString:@"0"]){[sNum1 appendString:strInput];_calcResult.text=[NSString stringWithString:sNum1];NSLog(@"%@",sNum1);}// _calcResult.text=strInput;
}
- (void)viewDidLoad
{[super viewDidLoad];self->sNum1=[[NSMutableString alloc]init];//初始化可变字符串,分配内存self->sNum2=[[NSMutableString alloc]init];//初始化可变字符串,分配内存self->sOpt=[[NSString alloc]init];//初始化可变字符串,分配内存//添加提示性文字UIAlertView *alex=[[UIAlertView alloc]initWithTitle:@"使用说明" message:@"该计算器支持连算,但是不支持浮点运算!" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles:nil];[alex show];[alex release];// Do any additional setup after loading the view, typically from a nib.
}- (void)didReceiveMemoryWarning
{[super didReceiveMemoryWarning];// Dispose of any resources that can be recreated.
}@end

最后一步:编译运行,ok完整的一个简单计算器支持连算功能完成

最后界面如下:

【IOS开发】IOS开发新手入门--简单计算器实现相关推荐

  1. Jeecg-Boot 快速开发平台,新手入门教程

    Jeecg-Boot入门教程必看(新手学习) 开发环境搭建   http://doc.jeecg.com/1273969 项目如何启动   http://doc.jeecg.com/1273967 J ...

  2. java微博开发_【新手入门篇】新浪微博应用开发之Java入门篇

    新浪微博应用开发之Java篇 2012年11月11日星期日 一.开发流程简介: 2.  在以下地址创建一个应用,假设创建一个桌面应用: 3.  进入管理中心,查看并记住应用ID和密码: 4.  在&q ...

  3. 百度云盘云知梦php_[云知梦]WEB前端开发_WEB前端新手入门视频教程[百度云盘]

    有想系统学习前端技术的小伙伴们,福利来啦! 课程介绍 本路线图汇集云知梦大牛专家老师最新原创课程,路线图内容涵盖Html/CSS.Javascript.jQuery. Node.js.Express ...

  4. 微信小程序开发纪实-菜鸟新手入门

    微信小程序开发纪实 第一天 开发背景 注册测试号,小程序号 页面跳转.登陆拦截 文件目录结构 题外技能 本人第一次尝试开发微信小程序,打算写一篇博客文章,尽可能的详细的把开发过程中的难点.思路.面向百 ...

  5. 音视频开发开发核心知识+新手入门必看基础知识

    音视频开发是一个广泛的领域,它涉及到多个技术领域,包括音频编解码.视频编解码.媒体容器格式.流媒体传输.音视频处理等.以下是音视频开发的一些基础知识: 音频编解码器:音频编解码器是将数字音频信号编码成 ...

  6. PHP新手入门简单了解PHP知识

    1:什么是PHP? PHP(Hypertext Preprocessor,超文本预处理器)是一种开源.服务器端.跨平台,HTML嵌入式的脚本语言,其语法吸收了C.Java和Perl的语言特点,利于学习 ...

  7. IntelliJ IDEA 使用Maven工具 (新手入门简单操作,maven的下载,安装,配置)

    一.maven的概述 1.什么是maven   maven是一个项目管理工具,包含项目管理,插件以及目标的逻辑等.maven为我们提供了一系列的执行流程: maven执行流程 2.maven的下载安装 ...

  8. 【原创】新手入门一篇就够:从零开发移动端IM

    一.前言 IM发展至今,已是非常重要的互联网应用形态之一,尤其移动互联网时代,它正以无与论比的优势降低了沟通成本和沟通代价,对各种应用形态产生了深远影响. 做为IM开发者或即将成为IM开发者的技术人员 ...

  9. 新手入门一篇就够:从零开发移动端IM

    一.前言 IM发展至今,已是非常重要的互联网应用形态之一,尤其移动互联网时代,它正以无与论比的优势降低了沟通成本和交流门槛,对各种应用形态产生了深远影响. 做为IM开发者或即将成为IM开发者的技术人员 ...

最新文章

  1. 12.委托是什么?委托的property声明用什么属性?为什么?
  2. android学习资料免费下载
  3. 最热BMS可直接下载!!
  4. WEB前端设计师常用工具集锦
  5. MySQL 轻量级Online DDL工具 —— gh-ost
  6. 关于:使用 OCT 自定义部署 Office 2007-2016
  7. 计算机移动硬盘无法访问,移动硬盘无法访问参数不正确的解决方法
  8. java获取上周和上上周的开始时间和结束时间
  9. 服务器启动时创建文件夹,技术|entr:文件更改时重新运行构建
  10. waf 防火墙限制_WAF防火墙设备指标及参数说明
  11. 腾讯云服务器基础使用方法
  12. java 多字段分组_在Java 8中按多个字段名称分组
  13. Linux中chown和chmod的用法
  14. HTML网页开发手册
  15. 网络安全电子数据取证如何学习?
  16. 计算机前沿(2022计算机前沿方向)
  17. 使用adblock屏蔽网页特定内容,例如微博推广
  18. 学生学籍信息管理系统(Java + SQL)
  19. 跟读者唠唠嗑(文末有惊喜)
  20. vue:loading动画

热门文章

  1. 自己动手做自动发布系统三
  2. 科奥斯扫地机器人_如何选购扫地机器人?
  3. 求伯君:从未放弃与微软竞争 金山在WPS在
  4. WIN11系统 PIN(window hello) 该选项目前不可用
  5. Spark统计类StatCounter类
  6. Java开发自学教程!这里有份超全Java体系化进阶学习图谱
  7. bugku-web-md5 collision(NUPT_CTF)
  8. 重庆财经职业学院计算机学费,重庆财经职业学院学费
  9. Sqlserver的convert函数
  10. 计算机科学家冯 诺依曼,冯诺依曼的成就 冯诺依曼有哪些成就