iPhone开发基础教程(完整版)

格式:PDF目录第1章欢迎来到iPhone的世界1 1.1关于本书1 1.2必要条件1 1.3必备知识3 1.4编写iPhone应用程序有何不同4 1.4.1只有一个正在运行的应用程序4 1.4.2只有一个窗口4 1.4.3受限访问4 1.4.4有限的响应时间4 1.4.5有限的屏幕大小5 1.4.6有限的系统资源5 1.4.7缺少Cocoa工具5 1.4.8新属性5 1.4.9与众不同的方法6 1.5本书内容6 1.6准备开始吧7第2章创建基本项目8 2.1在Xcode中设置项目8 2.2 Interface Builder简介12 2.2.1 nib文件的构成14 2.2.2在视图中添加标签15 2.3 iPhone美化17 2.4小结20第3章处理基本交互21 3.1模型—视图—控制器范型21 3.2创建项目22 3.3创建视图控制器22 3.3.1输出口23 3.3.2操作23 3.3.3将操作和输出口添加到视图控制器24 3.3.4将操作和输出口添加到实现文件26 3.4使用应用程序委托30 3.5编辑MainWindow.xib 32 3.6编辑Button_FunViewController.xib 33 3.6.1在Interface Builder中创建视图33 3.6.2连接所有元素35 3.6.3测试37 3.7小结38第4章更丰富的用户界面39 4.1满是控件的屏幕39 4.2活动、静态和被动控件41 4.3创建应用程序41 4.3.1导入图像41 4.3.2实现图像视图和文本字段42 4.3.3添加图像视图43 4.3.4添加文本字段46 4.3.5设置第二个文本字段的属性49 4.3.6连接输出口49 4.4构建和运行49 4.4.1完成输入后关闭键盘50 4.4.2通过触摸背景关闭键盘51 4.5实现滑块和标签52 4.5.1确定输出口52 4.5.2确定操作52 4.5.3添加输出口和操作52 4.5.4添加滑块和标签53 4.5.5连接操作和输出口54 4.6实现开关和分段控件55 4.6.1确定输出口55 4.6.2确定操作55 4.6.3添加开关和分段控件57 4.6.4连接输出口58 4.7实现按钮、操作表和警报59 4.7.1将输出口及操作添加到控制器头文件59 4.7.2在Interface Builder中添加按钮60 4.7.3实现按钮的操作方法60 4.8显示操作表61 4.9美化按钮63 4.9.1 viewDidLoad方法64 4.9.2控件状态65 4.9.3可拉伸图像65 4.10小结65第5章自动旋转和自动调整大小67 5.1使用自动调整属性处理旋转68 5.1.1指定旋转支持68 5.1.2使用自动调整属性设计界面70 5.1.3自动调整属性70 5.1.4设置按钮的自动调整属性72 5.2在旋转时重构视图73 5.2.1声明和连接输出口74 5.2.2在旋转时移动按钮74 5.3切换视图77 5.3.1确定输出口78 5.3.2确定动作78 5.3.3声明动作和输出口79 5.3.4设计两个视图79 5.3.5实现交换和动作80 5.3.6链接Core Graphics框架83 5.4小结85第6章多视图应用程序86 6.1 View Switcher应用程序88 6.2多视图应用程序的体系结构88 6.2.1多视图控制器也是视图控制器89 6.2.2内容视图剖析89 6.3构建View Switcher 89 6.3.1创建视图控制器和nib文件90 6.3.2修改应用程序委托92 6.3.3 SwitchViewController.h 93 6.3.4修改MainWindow.xib 93 6.3.5编写SwitchViewController.m 96 6.3.6实现内容视图99 6.4制作转换动画101 6.5重构103 6.6小结105第7章标签栏与选取器106 7.1 Pickers应用程序106 7.2委托和数据源108 7.3建立工具栏框架108 7.3.1创建文件108 7.3.2设置内容视图nib 109 7.3.3添加根视图控制器109 7.4实现日期选取器113 7.5实现单个组件选取器116 7.5.1声明输出口和操作116 7.5.2构建视图116 7.5.3将控制器实现为数据源和委托117 7.6实现多组件选取器121 7.6.1声明输出口和操作121 7.6.2构建视图122 7.6.3实现控制器122 7.7实现独立组件125 7.8使用自定义选取器创建简单游戏132 7.8.1编写控制器头文件132 7.8.2构建视图133 7.8.3添加图像资源133 7.8.4实现控制器133 7.8.5 spin方法136 7.8.6 viewDidLoad方法137 7.8.7最后的细节139 7.8.8链接Audio Toolbox框架142 7.9小结143第8章表视图简介144 8.1表视图基础144 8.2实现一个简单的表147 8.2.1设计视图147 8.2.2编写控制器148 8.3添加一个图像151 8.4附加配置151 8.4.1设置缩进级别152 8.4.2处理行的选择152 8.4.3更改字体大小和行高153 8.4.4委托还能做什么? 155 8.5定制表视图单元155 8.5.1单元应用程序155 8.5.2向表视图单元添加子视图155 8.5.3使用UITableViewCell的自定义子类159 8.6分组分区和索引分区163 8.6.1构建视图163 8.6.2导入数据163 8.6.3实现控制器164 8.6.4添加索引167 8.7实现搜索栏168 8.7.1重新考虑设计168 8.7.2深层可变副本168 8.7.3更新控制器头文件170 8.7.4修改视图171 8.7.5修改控制器实现172 8.8小结180第9章导航控制器和表视图181 9.1导航控制器181 9.1.1栈的性质181 9.1.2控制器栈182 9.2由6个部分组成的分层应用程序:Nav 182 9.3构建Nav应用程序的骨架184 9.3.1创建根视图控制器185 9.3.2设置导航控制器185 9.4第1个子控制器:展示按钮视图191 9.5第2个子控制器:校验表198 9.6第3个子控制器:表行上的控件202 9.7第4个子控制器:可移动的行207 9.7.1编辑模式208 9.7.2创建一个新的二级控制器208 9.8第5个子控制器:可删除的行213 9.9第6个子控制器:可编辑的详细窗格218 9.9.1创建数据模型对象219 9.9.2创建控制器221 9.9.3创建详细视图控制器224 9.10更多内容238 9.11小结240第10章应用程序设置和用户默认设置241 10.1了解设置束241 10.2 AppSettings应用程序242 10.3创建项目243 10.4使用设置束245 10.4.1在项目中添加设置束245 10.4.2设置属性列表246 10.4.3添加文本字段设置247 10.4.4添加安全文本字段设置249 10.4.5添加多值字段249 10.4.6添加拨动开关设置250 10.4.7添加滑块设置251 10.4.8添加子设置视图252 10.5读取应用程序中的设置253 10.6更改应用程序中的默认设置257 10.7小结259第11章基本数据持久性260 11.1应用程序的沙盒260 11.1.1获取Documents目录261 11.1.2获取tmp目录262 11.2文件保存策略262 11.2.1单个文件持久性262 11.2.2多个文件持久性262 11.3持久保存应用程序数据263 11.4持久性应用程序264 11.4.1创建持久性项目264 11.4.2设计持久性应用程序视图265 11.4.3编辑持久性类265 11.4.4对模型对象进行归档269 11.4.5实现NSCopying 270 11.5归档应用程序272 11.5.1实现FourLines类272 11.5.2实现PersistenceViewController类273 11.6使用iPhone的嵌入式SQLite3 276 11.7小结284第12章使用Quartz和OpenGL绘图285 12.1图形世界的两个视图285 12.2本章的绘图应用程序286 12.3 Quart绘图方法286 12.3.1 Quartz 2D的图形上下文286 12.3.2坐标系287 12.3.3指定颜色287 12.3.4在上下文中绘制图像289 12.3.5绘制形状:多边形、直线和曲线289 12.3.6 Quartz 2D工具示例:模式、梯度、虚线模式289 12.4构建QuartzFun应用程序290 12.4.1创建随机颜色291 12.4.2定义应用程序常量291 12.4.3实现QuartzFunView框架292 12.4.4向视图控制器中添加输出口和操作294 12.4.5更新QuartzFunViewController.xib 297 12.4.6绘制直线298 12.4.7绘制矩形和椭圆形299 12.4.8绘制图像301 12.5一些OpenGL ES基础知识306 12.6小结316第13章轻击、触摸和手势317 13.1多触摸术语317 13.2响应者链318 13.3多触摸体系结构319 13.4触摸浏览器应用程序320 13.5 Swipe应用程序324 13.6实现多个轻扫327 13.7检测多次轻击329 13.8检测捏合操作333 13.9自己定义手势336 13.10小结339第14章我在哪里?使用Core Location定位功能340 14.1位置管理器340 14.1.1设置所需的精度341 14.1.2设置距离筛选器341 14.1.3启动位置管理器341 14.1.4更明智地使用位置管理器341 14.2位置管理器委托342 14.2.1获取位置更新342 14.2.2使用CLLocation获取纬度和经度342 14.2.3错误通知343 14.3尝试使用Core Location 344 14.3.1更新位置管理器347 14.3.2确定移动距离348 14.4小结349第15章加速计350 15.1加速计物理学350 15.2访问加速计351 15.2.1 UIAcceleration 351 15.2.2实现accelerometer:didAccelerate:方法353 15.3摇动与击碎354 15.3.1用于击碎的代码355 15.3.2加载模拟文件358 15.3.3完好如初——复原触摸359 15.4滚弹珠程序359 15.4.1实现Ball View控制器360 15.4.2编写Ball View 361 15.4.3计算小球运动364 15.5小结366第16章iPhone照相机和照片库367 16.1使用图像选取器和UIImagePickerController 367 16.2实现图像选取器控制器委托368 16.3实际测试照相机和库370 16.3.1设计界面370 16.3.2实现照相机视图控制器371 16.4小结374第17章应用程序本地化375 17.1本地化体系结构375 17.2使用字符串文件376 17.3现实中的iPhone:本地化应用程序378 17.3.1查看当前区域设置381 17.3.2测试LocalizeMe 381 17.3.3本地化nib文件382 17.3.4查看本地化的项目结构383 17.3.5本地化图像385 17.3.6本地化应用程序图标386 17.3.7生成和本地化字符串文件386 17.4小结388第18章未来之路390 18.1答案揭晓390 18.1.1苹果公司的文档390 18.1.2邮件列表391 18.1.3论坛391 18.1.4网站391 18.1.5博客391 18.1.6如果仍未解决问题392 18.2再会392
pdf 文件大小:8.8MB