编程语言基础: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. 谈谈基于OAuth 2.0的第三方认证 [上篇]
  2. Linux局域网搭建
  3. 10.16 ln软硬链接的创建等
  4. pxe装机原理_linux PXE装机详解(非常详细,小白专用)
  5. 物联网卡如何帮助农民提高收益
  6. 游戏开发中的脚本语言
  7. jquery版本过低安全漏洞问题
  8. 高通9008端口刷linux,高通命令进入9008端口方式汇总
  9. 海南大学考研经验之(考研英语)
  10. Creator 3.0中摄像机调整技巧: 1.旋转:Cmd+右键 移动:空格+右键 放缩:滚轮
  11. 如何填报高考志愿2020流程图解和最全指南
  12. wav转mp3,wav怎么转换成mp3?
  13. Triangle 三角形求最小路径和 @leetcode
  14. 以“掌上东航”为例,论混合开发在企业级项目中的实践
  15. 机器人视觉测量与控制
  16. linux aufs,Linux文件系统之aufs
  17. 在word文档中如何自动生成目录,两种方法制作目录,总有一种适合你
  18. 串口的使用-ttyUSB0设备
  19. 品牌策划的驱动内核,营销美学战略和视觉营销策略
  20. Conwaylife_HDLbits(康威生命游戏)

热门文章

  1. 疫情期间网民情绪识别
  2. 线性代数代码实现(六)矩阵除法(C++)
  3. 计算机二级容量剩余,剩余容量
  4. Terracotta简单使用
  5. python最佳身高_KNN分类算法原理与Python+sklearn实现根据身高和体重对体型分类
  6. Liunx系统 Ubuntu乌班图快速入门笔记
  7. Eureka参数配置项
  8. 设计模式笔记--桥梁模式
  9. likely() 和 unlikely() 判断语句
  10. VB杀Excel进程