內容簡介

本書全面探討了iPhone平台的兩種編程方式——Web開發和SDK編程。全書結合示例對這兩種編程方式的基本流程、基本原理和基本原則給出了詳細而通俗的講解。在Web開發方面,分別介紹了三個iPhone Web庫,即WebKit、iUI和Canvas,並討論了Web開發環境Dashcode,最後闡述Web應用程序的調試。在SDK開發方面,詳細描述其各種組件和功能,包括Xcode、Interface Builder、視圖控制器、用戶交互、SDK工具包、加速計和GPS、媒體、圖形等。

本書適合所有iPhone開發人員學習參考。
 

目錄

第一部分 iPhone編程簡介
第1章 iPhone簡介
1.1 iPhone核心規範
1.1.1 iPhone的輸入及輸出規範
1.1.2 iPhone網絡規範
1.1.3 iPhone瀏覽器規範
1.1.4 iPhone的其他硬件特性
1.2 iPhone在行業中的比較
1.2.1 物理比較
1.2.2 具有競爭力的因特網瀏覽
1.2.3 移動Web標準
1.2.4 其他創新
1.3 iPhone的獨特之處
1.4 理解iPhone輸入和輸出
1.4.1 輸出和iPhone視區
1.4.2 輸出和方向
1.4.3 輸入和iPhone定位機制
1.5 小結
第2章 Web還是SDK
2.1 比較兩種編程風格
2.2 核心思想︰編程的連續性
2.3 優點和缺點
2.3.1 Web開發
2.3.2 SDK開發
2.3.3 程序平台
2.4 獨立iPhone開發
2.4.1 Web開發模型
2.4.2 SDK開發模式
2.5 集成iPhone開發
2.5.1 鏡像開發
2.5.2 混合開發
2.5.3 客戶機-服務器開發
2.5.4 關于集成的最後想法
2.6 小結
第二部分 為iPhone設計網
第3章 為iPhone重新開發網頁
3.1 iPhone視區
3.1.1 更改整站視區
3.1.2 更改局部視區
3.1.3 視區屬性和常量
3.2 實現“iPhone友好的”網頁
3.2.1 避免缺少iPhone功能
3.2.2 創建鏈接
3.2.3 Web開發中的良好習慣
3.2.4 解決常見問題
3.3 實現“iPhone優化的”網頁
3.3.1 通過USER_AGENT檢測iPhone
3.3.2 通過CSS檢測iPhone
3.3.3 使用CSS進行優化
3.4 使用iPhone chrome
3.4.1 三個欄
3.4.2 Web剪貼
3.5 捕獲iPhone事件
3.5.1 單指觸摸
3.5.2 兩指手勢
3.6 重新顯示網頁
3.6.1 Gmail iPhone頁面
3.6.2 Facebook iPhone頁面
3.7 支持非iPhone用戶
3.8 小結
第4章 高級WebKit和文本Web應用程序
4.1 WebKit簡介
4.1.1 新的HTML元素
4.1.2 新的CSS元素
4.2 CSS變換、過渡和動畫
4.2.1 變換函數
4.2.2 過渡函數
4.2.3 動畫函數
4.3 WebKit數據庫
4.3.1 加載數據庫
4.3.2 運行事務
4.3.3 一個示例數據庫
4.4 調整chrome
4.5 識別觸摸和手勢
4.5.1 訪問事件
4.5.2 轉換事件
4.5.3 訪問觸摸
4.5.4 訪問手勢
4.6 識別方向
4.7 即將推出的特性︰CSS漸變和蒙版
4.7.1 CSS漸變
4.7.2 CSS蒙版
4.7.3 Canvas替代方法
4.8 小結
第5章 使用iUI開發Web應用程序
5.1 創建你自己的iPhone UI
5.1.1 圖形界面
5.1.2 iPhone數據範型
5.1.3 其他iPhone設計元素
5.2 準備iUI
5.3 使用iUI進行開發
5.3.1 iUI工具欄
5.3.2 iUI列表
5.3.3 iUI對話框
5.3.4 iUI搜索支持Ajax
5.3.5 iUI面板和行
5.3.6 iUI按鈕
5.3.7 iUI屬性
5.4 創建iUI後端
5.5 其他iUI技巧
5.5.1 組織代碼
5.5.2 改善數據代碼清單
5.5.3 壓縮iUI
5.5.4 選擇不同的外觀
5.6 集成iUI與其他庫
5.6.1 結合jQuery與iUI
5.6.2 結合iUI與WebKit
5.7 小結
第6章 使用Canvas開發Web應用程序
6.1 準備Canvas
6.1.1 啟用Canvas
6.1.2 確保兼容性
6.1.3 合並功能
6.2 繪制路徑
6.2.1 基本路徑命令
6.2.2 曲線命令
6.3 繪制形狀
6.3.1 繪制矩形
6.3.2 編寫形狀函數
6.4 創建樣式︰顏色、漸變和線條
6.4.1 顏色樣式
6.4.2 漸變樣式
6.4.3 線條樣式
6.5 修改合成與剪切
6.5.1 全局變量
6.5.2 剪切路徑
6.6 變換和恢復
6.6.1 變換
6.6.2 狀態棧
6.7 整合圖像、模式和文本
6.7.1 圖像命令
6.7.2 模式命令
6.7.3 文本命令
6.8 合並功能
6.9 應用動畫
6.10 小結
第7章 使用Dashcode構建Web應用程序
7.1 Dashcode簡介
7.1.1 開始Dashcode項目
7.1.2 Dashcode剖析
7.1.3 運行Dashcode項目
7.1.4 部署Dashcode項目
7.2 編寫Dashcode程序
7.2.1 使用庫部件
7.2.2 添加動作按鈕
7.2.3 使用基于列表的Browser模板
7.2.4 使用stackLayout部件
7.2.5 探究Dashcode的其余方面
7.3 集成Dashcode與已有庫
7.3.1 集成Dashcode與Webkit
7.3.2 集成Dashcode與iUI
7.3.3 集成Dashcode與Canvas
7.3.4 更深的集成
7.4 小結
第8章 調試iPhone網頁
8.1 在本地使用Apache
8.2 使用桌面瀏覽器進行調試
8.2.1 使用Safari
8.2.2 使用Firefox
8.2.3 使用iPhone仿真器
8.3 調試iPhone
8.3.1 使用iPhone調試工具
8.3.2 使用bookmarklet
8.4 分析iPhone
8.5 小結
第9章 適用于Web開發人員的SDK編程
9.1 C語言概念簡介
9.1.1 聲明和類型
9.1.2 內存管理和指針
9.1.3 文件結構和指令
9.1.4 編譯
9.1.5 其他元素
9.2 面向對象編程簡介
9.2.1 對象和類
9.2.2 消息傳遞
9.3 模型-視圖-控制器(MVC)模式
9.4 小結
第三部分 SDK基本原
第10章 Objective-C和iPhone OS
10.1 下載SDK
10.1.1 安裝SDK
10.1.2 SDK剖析
10.2 Objective-C介紹
10.2.1 概述
10.2.2 消息
10.2.3 類定義
10.2.4 屬性
10.2.5 其他編譯器指令
10.2.6 類別和協議
10.2.7 Objective-C總結
10.3 iPhone OS介紹
10.3.1 iPhone OS剖析
10.3.2 iPhone對象的層次結構
10.3.3 窗口和視圖
10.4 iPhone OS的方法
10.4.1 對象創建
10.4.2 內存管理
10.4.3 事件響應
10.4.4 生命周期管理
10.5 小結
第11章 使用Xcode
11.1 Xcode簡介
11.1.1 剖析Xcode
11.1.2 在Xcode中編譯和執行
11.2 在Xcode中創建第一個項目︰Hello,World!
11.2.1 理解main.m
11.2.2 理解應用程序委托
11.2.3 編寫“Hello,World!”
11.3 在Xcode中新建類
11.3.1 新類簡介
11.3.2 頭文件
11.3.3 源代碼文件
11.3.4 鏈接
11.4 Xcode的其他功能
11.4.1 在Xcode中添加框架
11.4.2 在Xcode中使用其他模板
11.4.3 Xcode提示和技巧
11.5 小結
第12章 使用Interface Builder
12.1 Interface Builder介紹
12.1.1 Interface Builder剖析
12.1.2 在Interface Builder中模擬
12.2 在Interface Builder中創建第一個項目︰圖片和網頁
12.2.1 新建對象
12.2.2 操作圖形對象
12.2.3 使用Inspector窗口
12.2.4 使用圖片
12.3 在Interface Builder中建立連接
12.3.1 聲明IBOutlet
12.3.2 連接對象
12.3.3 使用IBOutlet編寫代碼
12.4 其他Interface Builder功能
12.4.1 建立其他連接
12.4.2 創建外部對象
12.4.3 初始化Interface Builder對象
12.4.4 訪問.xib文件
12.4.5 新建.xib文件
12.5 小結
第13章 創建基本視圖控制器
13.1 視圖控制器家族
13.2 基本的視圖控制器
13.2.1 視圖控制器的分析圖
13.2.2 創建視圖控制器
13.2.3 構建視圖控制器界面
13.2.4 使用視圖控制器
13.3 表視圖控制器
13.3.1 表視圖控制器的分析圖
13.3.2 創建表視圖控制器
13.3.3 構建表界面
13.3.4 使用表視圖控制器
13.4 小結
第14章 監控事件和動作
14.1 事件簡介
14.1.1 響應者鏈
14.1.2 觸摸和事件
14.2 觸摸的例子︰事件報告程序
14.2.1 在Interface Builder中構建應用程序
14.2.2 為觸摸準備視圖
14.2.3 控制事件
14.3 其他事件功能
14.3.1 規則化事件
14.3.2 其他事件方法和屬性
14.4 動作簡介
14.4.1 UIControl對象
14.4.2 控件事件和動作
14.4.3 addTarget:action:forControlEvents:方法
14.5 向應用程序添加按鈕
14.5.1 使用addTarget:action:forControlEvents:
14.5.2 使用IBAction
14.6 其他動作功能
14.6.1 UITextField
14.6.2 UISlider
14.6.3 TextField/Slider組合
14.6.4 創建動作很容易
14.6.5 使用動作
14.7 通知簡介
14.8 小結
第15章 創建高級視圖控制器
15.1 選項卡欄視圖控制器
15.1.1 選項卡欄控制器分析
15.1.2 創建選項卡欄控制器
15.1.3 構建選項卡欄界面
15.1.4 使用選項卡欄控制器
15.2 導航控制器
15.2.1 導航控制器分析
15.2.2 創建導航控制器
15.2.3 構建導航控制器
15.2.4 使用導航控制器
15.3 使用翻轉控制器
15.4 模式視圖控制器
15.5 小結
第四部分 使用SDK工具包編程
第16章 處理數據
16.1 接收用戶動作
16.2 管理用戶首選項
16.2.1 創建自己的首選項
16.2.2 使用系統設置
16.3 打開文件
16.3.1 訪問軟件包
16.3.2 訪問其他目錄
16.3.3 操縱文件
16.3.4 Filesaver︰一個UITextView示例
16.4 使用SQLite
16.4.1 設置SQLite數據庫
16.4.2 訪問SQLite
16.4.3 訪問SQLite數據庫
16.4.4 通過數據庫構建導航菜單
16.4.5 本例的擴展
16.5 訪問地址簿
16.5.1 框架概述
16.5.2 訪問地址簿屬性
16.5.3 查詢地址簿
16.5.4 使用地址簿UI
16.6 小結
第17章 定位︰加速計和位置
17.1 加速計和方向
17.1.1 orientation屬性
17.1.2 方向通知
17.2 加速計和移動
17.2.1 訪問UIAccelerometer
17.2.2 解析UIAcceleration
17.2.3 查看重力
17.2.4 查看移動
17.2.5 識別簡單的加速計移動
17.3 加速計和手勢
17.4 關于Core Location
17.4.1 位置類
17.4.2 使用位置和距離的示例
17.4.3 使用海拔的示例
17.4.4 Core Location和互聯網
17.5 小結
第18章 媒體︰圖像和聲音
18.1 圖像介紹
18.1.1 加載UIImage
18.1.2 繪制UIImageView
18.1.3 在UIKit中修改圖像
18.2 利用Core Graphics繪制簡單圖像
18.3 訪問照片
18.3.1 使用圖像選取器
18.3.2 拍照
18.3.3 保存到相冊
18.4 拼合︰一個圖像例子
18.4.1 拼合視圖控制器
18.4.2 拼合臨時圖像視圖
18.4.3 拼合視圖
18.4.4 擴展這個例子
18.5 使用Media Player框架
18.5.1 媒體播放器類
18.5.2 音量視圖
18.5.3 更好地集成媒體播放器
18.6 手動播放聲音
18.6.1 播放簡單聲音
18.6.2 振動iPhone
18.6.3 播放復雜的聲音
18.6.4 其他音頻框架
18.7 小結
第19章 繪制圖形
19.1 Quartz 2D簡介
19.2 Quartz上下文
19.2.1 在UIView上繪制圖形
19.2.2 在位圖上繪制圖形
19.3 繪制路徑
19.3.1 結束路徑
19.3.2 創建可重用路徑
19.3.3 繪制矩形
19.4 設置圖形狀態
19.4.1 設置顏色
19.4.2 變換
19.4.3 設置裁剪路徑
19.4.4 其他設置
19.4.5 管理狀態
19.5 Quartz中的高級繪圖功能
19.5.1 繪制漸變
19.5.2 繪制圖像
19.5.3 繪制文字
19.5.4 未介紹的內容
19.6 示例︰在圖片上繪圖
19.6.1 photodraw視圖控制器
19.6.2 photodraw視圖
19.6.3 擴展示例
19.7 Core Animation簡介
19.7.1 Core Animation基礎
19.7.2 Core Animation入門
19.7.3 繪制簡單的隱式動畫
19.7.4 繪制簡單的顯式動畫
19.8 OpenGL簡介
19.9 小結
第20章 Web︰Web視圖和因特網協議
20.1 因特網的層次結構
20.2 低層次聯網
20.3 使用URL
20.3.1 創建NSURL
20.3.2 構建NSURLRequest
20.3.3 手動操作HTML數據
20.4 使用UIWebView
20.4.1 調用Web視圖
20.4.2 管理Web視圖委托
20.4.3 縮略圖︰一個Web視圖例子
20.4.4 Google Maps︰一個Core Location示例
20.5 解析XML
20.5.1 啟動NSXMLParser
20.5.2 充當委托
20.5.3 構建示例RSS閱讀器︰一個XML示例
20.5.4 海拔高度重讀︰一個Core Location示例
20.6 提交給Web
20.6.1 手動提交
20.6.2 提交表單
20.7 訪問社會網絡
20.7.1 使用Web協議
20.7.2 使用TouchJSON
20.8 小結
附錄A iPhone OS類參考
附錄B 外部資源和參考資料
附錄C 發布你的SDK程序
 

目前,iPhone開發有兩種截然不同的方式,即Web開發和SDK編程。這兩種開發方式各有利弊,但它們都能為應用程序提供豐富、強大的功能。由于兩種開發模型在本質上存在差異,所以它們各自所適用的開發情形也不相同。Web開發適合創建功能簡單、動態且需要因特網連接的應用程序,而SDK編程適合創建功能復雜、強大的應用程序。

本書提供了關于Web開發和SDK編程的全面信息,從iPhone的基本概念入手,對這兩種開發方式進行了詳細和通俗的講解。本書采用理論與實踐相結合的方式,指導讀者創建一系列示例應用程序,讓讀者能在實踐中理解這兩種開發方式的詳細步驟,並掌握具體的開發工具和組件。

全書分為4個部分,共20章。第一部分主要討論基本的iPhone概念,包括iPhone的詳細信息,它的獨特特性以及兩種編程方式的優勢。第二部分討論Web開發,內容涵蓋了3個iPhone Web庫(即WebKit、iUI和Canvas),Dashcode開發環境以及Web應用程序的調試方法。另外兩個部分討論SDK編程,其中詳細介紹了SDK的各種組件和功能,包括Xcode、Interface Builder、視圖控制器、用戶交互、SDK工具包、加速計和GPS、媒體、圖形等。

本書覆蓋面廣,結構清晰合理,是一本特色鮮明的iPhone開發指南。本書面向任何有志于iPhone編程的學習者。通過清晰、有詳細講解的示例,讀者可以迅速入門並掌握高效率開發的最佳實踐。書中給出了經過測試、現成可用的解決方案,讀者因此可以專注于應用程序的具體部分,而不必為樣本式的任務勞神。本書中的示例具有很強的通用性,特別適合作為參考使用。

本書由漆振、孫文磊、陳寶國、易磊、謝君英等翻譯,在翻譯過程中,得到了張波、歐陽宇的幫助,在此一並致謝。但由于譯者的知識所限,加之時間倉促,譯文中難免會出現疏漏,誠懇地希望廣大讀者給予批評指正。
網路書店 類別 折扣 價格
  1. 新書
    87
    $360