首先我们得成为注册ADC会员,这个是免费的,并且可以获得很多开发资料。
http://developer.apple.com/iphone/program/start/register/
上面是注册地址

iPhone 开发环境介绍
目前给iPhone开发的时候,操作系统可以分两种,一种是linux(比如Fedora、Ubuntu),另外一种则是mac os x环境下面。由于linux下面开发要破解iPhone,而且还没有非常强悍的开发工具,所以我们不会介绍linux下如何开发iPhone应用。
在mac os x环境下面,只要你注册成为ADC会员,则可以下载到iPhone的SDK(这个的SDK不像java的SDK),里面是一个完整的iPhone开发环 境,从代码编写、UI设计到编译、调试、打包管理等等,非常强悍。所以这个SDK比较大,有2个G。在这个SDK中,首先我们用到的是xCode、 Interface Builder以及iPhone模拟器。
xCode是主要负责代码的编写、编译、debug、发布等,当然还有类相关的文档。
Interface Builder则集中在界面的编写,同时支持HIG(Apple Human Interface Guidelines,指导开发人员如何设计用户界面),但是在这个工具中,我们是不能写一行代码的,Interface Builder会帮我们创建相应的Objective-C对象(这是mac平台的一种开发语言),然后将这些对象序列化到xib文件中。
iPhone模拟器就不用多说了,可以方便的查看自己编写的应用如何。

下面是xCode与Interface Builder的图标

开发语言介绍
第一种是Objective-C编程语言,在iPhone中就是Cocoa touch,一般应用的话,都会用到,所以是不能或缺的。
第二种是Quartz 2D,这个主要用来绘图的,Quartz是一组函数、数据类型以及对象,专门设计用于直接在内存中对视图或图像进行绘制。
第三种是OpenGL ES,虽然也是用来绘图的,但是和Quartz不一样,OpenGL是以状态机的形式实现的。而OpenGL ES则是OpenGL的一个子集,专门用于嵌入式系统的,目前iPhone OS 3.0以下的只支持OpenGL ES 1.*的实现,而3.0则支持OpenGL ES 2.0的实现。
在开发过程中,最好不要把Quartz 2D与OpenGL ES一起使用,毕竟iPhone的性能比不上桌面环境,这个也是Apple官方建议的。

开发环境搭建
在mac os x平台下面,开发环境的搭建很简单。
首先确保mac os x的系统版本在10.5.5或以上,然后下载iphone SDK,现在可以下载到iphone os 3.0的SKD。
下载完以后安装,按照提示做就可以了,很简单。
安装完以后,环境就搭建好了。

写一个简单的demo
这次先写一个简单的demo,在iPhone屏幕上显示2个按钮,当点击按钮的时候,改变iPhone屏幕的颜色。虽然demo很简单,但是能让我们理解 iPhone的一种开发模式。
先打开xCode,新建一个View-Based Application项目。如下图:

加一个小小的说明,所有的iPhone应用只有一个window对象(窗口对象),在window对象中,可以添加View对象(视图对象),我们 平常见到的按钮、输入框、标签等,都是继承自View对象的。

项目打开以后,目录结构如下图:

点击 Bulid and Go , 会出现如下图:

由于现在我们什么都没有做,自然iPhone应用里面什么都没有。

再到Classes目录下面去看看,打开看一下,实际上h结尾的是头文件,而m结尾的是实现文件,这点很像c、c++。但是又有些不一样,比如 @property这个标签,通过标签我们可以不用写setter和getter方法。 这些都是Objective-C 2.0的特性,不过注意一点,在iPhone OS中目前还不支持垃圾回收。

仔细看看这些文件,我们会发现一组是项目名称后面加上了AppDelegate,一组是项目名称后面加上了 ViewController,这是xCode的“潜规则”。这次先不说AppDelegate应用程序代理,先说ViewController,这个是 什么意思呢?这个是MVC模式中的C,而MVC模式中的V,则是Interface Builder的xib文件。

那么先来修改界面吧,在这次的demo里面,在Resources目录下面,会有两个xib文件,一个是 MainWindow.xib,这个是应用程序在启动时默认加载的,可以在Info.plist文件里面修改启动加载的xib文件;另外一个是项目名称 + ViewController.xib,双击打开这个xib,这时会启动Interface Builder,打开一看就知道是一个所见即所得的环境。如 下图:

现在来加两个按钮吧。

从Library窗口中拖两个button到View窗口中,这表明将会有两个按钮出现在视图中,顺便加上按钮标签, 在拖动按钮的时候会有蓝色的虚线出现,这些虚线是符合HIG的,尽量跟这它来吧。如下图:

此时回到xCode,Build and Go,现在应用里面多了两个按钮了,所以就这么简单,开发不是很麻烦。如下图:

接下来就要改controller了,打开CT_oneViewController.h这个文件(demo项目叫 CT_one),刚刚我们在Interface Builder中加的两个按钮,怎么让controller知道已经有两个按钮了呢?所以要用到关键字IBOutlet,这个关键字表示变量将会连接到 xib文件中的对象实例。

所以先声明2个IBOutlet对象,如下图:

然后是把Interface Builder中的按钮和Controller中的按钮变量连接起来,回到Interface Builder中,右键按住File’s Owner,移动鼠标到View窗口,放开鼠标以后会出现Outlets的选择,由于CT_oneViewController是这个View的所有者, 所以CT_oneViewController.h得与CT_oneViewController.xib中的view对应。

右键File’s Owner,出现如下图:

可以看到刚才声明的两个按钮变量了,通过右边的原点,把变量与View窗口中的变量连接起来。

就这样,代码里面的变量就是UI层面的按钮了。

接下来就要做事件的处理了,用xCode与Interface Builder开发,事件处理很有意思。

既然要使背景颜色改变,所以还是得写几行代码的,首先在CT_oneViewController.h中声明两个方法:

-(IBAction) clickLeftButton:(id)sender;

-(IBAction) clickRightButton:(id)sender;

在CT_oneViewController.m中实现上面的两个方法:

-(IBAction) clickLeftButton:(id) sender {

self.view.backgroundColor = [UIColor blueColor];

}

-(IBAction) clickRightButton:(id) sender {

self.view.backgroundColor = [UIColor redColor];

}

方法已经准备好了,剩下的就是把按钮的事件和方法连接起来就可以了。

右键左边的按钮,出现如下图:

可以看到很多事件,我们只对点击感兴趣(在iPhone中是手指轻抚屏幕),所以只要把Touch Up Inside连接到controller的方法就可以了,操作就是右击右边的小圆圈,移动到File’s Owner上面,出现选择如下图:

这不就是我们刚才编写的方法的,该连的连上。右边的按钮也是如此。

回到xCode,Build and Go。点击按钮,效果如下:

这次就到这里吧, thanks.

iPhone开发入门相关推荐

  1. iPhone开发入门守则:Objective-C编码规范--系列教程

    iPhone开发入门守则:Objective-C编码规范(1) iPhone开发入门守则:Objective-C编码规范(2) iPhone开发入门守则:Objective-C编码规范(3) iPho ...

  2. Unity3D iPhone开发入门 (转)iPhoneSettings.

    From: http://www.j2megame.com/html/xwzx/ty/2363.html 作者:Unity3D大中华社区 日期:2011年07月13日 来源:Unity3D大中华社区 ...

  3. Unity iPhone开发入门

    可能开发iphone的同学不多,但里面讲到的一些优化思路同样也能适用于pc开发,大家可以借鉴.本人翻译水平有限,欢迎指正呵呵! Unity iPhone开发入门 (一) 为iPhone开发 为iPho ...

  4. iPhone开发入门(1)----程序员眼中的iPhone

    自去年 iPhone 面世以来,开创了移动设备内容服务的一种新的模式--程序商店(App Store).它极大地降低了移动设备应用程序开发的成本,即使普通人也能进入这个市场.就像在PC上开发应用程序一 ...

  5. iPhone开发入门(10)— 设备上运行程序

    博主:易飞扬 原文链接 : http://www.yifeiyang.net/introduction-to-iphone-development-10-devices-running-the-pro ...

  6. iPhone开发入门(1)—-程序员眼中的iPhone

    http://blog.csdn.net/itudou_2010/article/details/5492272 iPhone开发入门(1)--程序员眼中的iPhone 博主:易飞扬 原文链接 : h ...

  7. 图解iPhone开发入门教程

    现在的智能手机越来越风行了,其中尤以Apple的iPhone和Google的Android系统最为流行,这里我将向大家介绍iPhone开发的基础知识.为了便于初学者尽快上手,我尽量以代码加截图的方式加 ...

  8. iPhone开发教程 UI基础课程(58课时)

    qianqianlianmeng iPhone开发教程 UI基础课程(58课时) 第一章   iPhone开发入门 UI基础课程 第一章 iPhone开发入门 1.1 iOS概述和架构         ...

  9. iphone开发笔记和技巧总结

    在iphone程序中实现截屏的一种方法: //导入头文件   #importQuartzCore/QuartzCore.h //将整个self.view大小的图层形式创建一张图片imageUIGrap ...

最新文章

  1. 关于函数调用、静态变量、预编译的习题
  2. Dubbo和Zookeeper
  3. 2003 SERVER 本地连接 TCP/IP问题[转]
  4. c++buider2010 中.dfm无法打开设计界面的解决方法
  5. mysql 遍历二叉树_【自考】数据结构之二叉树遍历
  6. 音视频技术开发周刊 | 195
  7. YbtOJ-交换游戏【树链剖分,线段树合并】
  8. 怎么运行aws的示例程序_使Spring Boot应用程序在AWS上无服务器运行
  9. mysql l日志分析,MySQL的截取与分析日志文件
  10. java 框架架构图_java框架之Spring 核心框架体系结构
  11. P1120-小木棍 [数据加强版]
  12. android 中xml文件的各种样式的学习
  13. testng数据驱动_TestNG数据提供者
  14. 【Redis总结-基础入门】
  15. 共模电感适用的频率_共模电感的原理以及使用情况
  16. vscode 报Open a folder or workspace... (File -> Open Folder)解决办法
  17. c语言程序后退_单片机控制小车循迹(前进、后退、左右转)
  18. 关于成立一个软件工作室
  19. Kubernetes 进阶训练营 控制器
  20. 中国全民人寿保险市场趋势报告、技术动态创新及市场预测

热门文章

  1. 评测三款最流行的txt阅读器(Mac适用)
  2. Java开源电商项目比較
  3. What is T abby? Interpretable Model Decisions by Learning Attribute-based Classification Criteria翻译*
  4. 使用极限学习机进行股市预测(Matlab代码实现)
  5. 【ArcGIS Pro微课1000例】0020:ArcGIS Pro中河流(曲线)、湖泊(水体色)图例制作案例教程
  6. 家居安防与监控全国产化电子元件推荐方案
  7. 有关面试八股文的一些难点
  8. express hot-reload
  9. 没想到,这个程序员只用了20行代码就拿了冠军
  10. 关于DOTA2排名前5战队惯用英雄分析(二)