以下書況,主觀上皆可閱讀,若收到後不滿意,『都可退書退款』。
書況補充說明: B自然泛黃書斑、髒污。
【購買須知】
(1)照片皆為現貨實際拍攝,請參書況說明。
(2)『賣場標題、內容簡介』為出版社原本資料,若有疑問請留言,但人力有限,恕不提供大量詢問。
(3)『附件或贈品』,不論標題或內容簡介是否有標示,請都以『沒有附件,沒有贈品』為參考。
(4)訂單完成即『無法加購、修改、合併』,請確認品項、優惠後,再下訂結帳。如有疑問請留言告知。
(5)二手書皆為獨立商品,下訂即刪除該品項,故『取消』後無法重新訂購,須等系統安排『2個月後』重新上架。
(6)收到書籍後,若不滿意,或有缺漏,『都可退書退款』。
[商品主貨號] U102327872
[代售商品編號] 101980400239
[ISBN-13碼] 9787121287077
[ISBN] 7121287072
[作者] 闕喜濤
[出版社] 電子工業出版社
[出版日期] 2016/06/01
[內容簡介] (出版商制式文字, 不論標題或內容簡介是否有標示, 請都以『沒有附件、沒有贈品』為參考。)
React Native師出名門,於2015年11月初成為真正的跨平臺移動應用開發框架。本書從零開始切入React Native開發,逐一講解各個元件,包括頁面導航、彈出框、OS平臺Object c語言混合開發、flexbox佈局、Image、View與可觸摸元件等,適用 Android和蘋果兩系統手機開發,是移動開發者學習React Native不可多得的入門寶典。React Native是Facebook公司最新推出的,強大的、開源的跨平臺移動應用開發框架,它能大幅減少跨平臺移動應用開發的工作量,並且代碼結構清晰、簡單易懂。同時React Native框架採用模組化結構,使應用版本的更新反覆運算非常簡單。隨著它的日趨成熟,React Native必然會成為移動應用開發的主流技術。 本書由淺入深、系統地介紹了使用React Native框架跨平臺開發所需要用到的知識。本書每一章都專注於闡述某一方面的知識,配合若干個原創的、精小的常式,能讓讀者系統、快速地掌握該方面知識。 本書是按照有基本的程式設計基礎知識,剛學習JavaScript基本語法的讀者最佳學習路徑來編寫的。有一定基礎的開發人員也可以將本書作為React Native開發的“字典”來使用,在開發時可以快速查找相關知識點的細節。
目錄
第1章React Native 1
1.1 React Native開發特點 2
1.1.1 一次學習,隨處編寫 2
1.1.2 混合開發 2
1.1.3 高效的UI開發 3
1.1.4 高效的UI調試 4
1.1.5 學習門檻低、開發難度低 4
1.1.6 開發軟硬體要求低 5
1.1.7 使用React Native開發的代價 5
1.1.8 為什麼React Native尚未流行 7
1.2 React Native開發環境搭建 7
1.2.1 開發環境搭建起點 7
1.2.2 Windows作業系統下React Native開發環境搭建 8
1.2.3 蘋果作業系統下React Native開發環境搭建 9
1.2.4 查看與刪除使用npm命令安裝的軟體 11
1.3 代碼編輯環境搭建 11
1.3.1 Sublime Text 3 11
1.3.2 開發用外掛程式 11
1.3.3 Sublime介面風格選擇 13
1.3.4 鍵盤使用習慣 13
1.4 React Native Dev tool安裝 14
第2章狀態機思維與狀態機變數 16
2.1 初始化項目 16
2.2 運行項目 17
2.2.1 使用Android手機進行調測 18
2.2.2 使用iPhone手機或模擬器進行調測 21
2.2.3 修改JSX代碼 22
2.2.4 ES 6語法與ES 5語法 24
2.2.5 啟動調試工具 25
2.3 構建註冊頁面 28
2.4 React Native代碼執行邏輯 32
2.5 狀態機思維與狀態機變數 33
2.5.1 狀態機思維 33
2.5.2 “冒充常量”的狀態機變數 35
2.5.3 “無處安放”的狀態機變數 36
2.5.4 “努力瘦身”的狀態機變數 36
2.6 React Native組件間通信 37
2.7 深入理解UI重新渲染的過程 37
2.7.1 合併狀態機變數 37
2.7.2 判斷是否渲染 40
2.7.3 替換狀態機變數 40
2.7.4 強制啟動渲染 41
2.7.5 渲染過程 41
2.7.6 合併狀態機變數的最簡語法 42
2.8 React Native元件的成員變數 42
2.9 React Native元件的靜態變數、靜態函數 43
第3章頁面導航、彈出框及深入理解屬性 44
3.1 分離註冊元件、元件平臺自適配 44
3.1.1 分離註冊元件 44
3.1.2 組件平臺自適配 44
3.1.3 平臺檢測 45
3.2 導航元件、掛接註冊元件 45
3.3 掛接註冊等待組件 47
3.4 Navigator元件工作機制 49
3.4.1 push與pop 50
3.4.2 replace函數 50
3.5 自訂群組件 51
3.5.1 “彈出一切框”的實現 51
3.5.2 React Native中顏色類型的值 53
3.5.3 掛接自訂群組件 54
3.6 BackAndroid API的bug與解決辦法 56
3.7 屬性確認 58
3.8 指定屬性預設值 60
3.9 Alert應用程式設計發展介面 60
3.9.1 彈出確認框 60
3.9.2 彈出選擇框 61
3.10 帶巡覽列的頁面導航 62
第4章混合開發基礎篇 63
4.1 iOS平臺混合開發 63
4.1.1 與iOS 側原生代碼消息互通 64
4.1.2 React Native代碼到iOS原生代碼的消息 65
4.1.3 iOS 原生代碼到React Native代碼的消息 68
4.1.4 與iOS OC原生代碼介面切換 69
4.1.5 應用初始介面設定 69
4.1.6 iOS混合開發中傳遞的參數類型 70
4.1.7 混合開發中的多執行緒使用 70
4.1.8 原生代碼實現Promise機制 71
4.1.9 跨語言常量 72
4.2 Android平臺混合開發 73
4.2.1 與Android原生代碼消息互通 74
4.2.2 React Native代碼到Android原生代碼的消息 75
4.2.3 與Android原生代碼介面的切換 78
4.2.4 Android原生代碼到React Native代碼的消息 82
4.2.5 應用初始介面設定 86
4.2.6 傳遞的參數類型 86
4.2.7 回呼函數與Promise機制 86
4.2.8 監聽ActivityResult與Android生命週期事件 88
4.2.9 混合開發中的多執行緒機制 89
4.2.10 跨語言常量 89
第5章flexbox佈局、View、Image與可觸摸組件 90
5.1 flexbox佈局 90
5.1.1 位置及寬、高相關樣式鍵 91
5.1.2 決定子元件排列規則的鍵 92
5.1.3 決定元件顯示規則的鍵 94
5.1.4 邊框、空隙與填充 95
5.1.5 元件多樣式聲明與動態樣式聲明 96
5.2 View組件 97
5.2.1 View元件的顏色與邊框 97
5.2.2 View元件的陰影與其它他視覺效果 99
5.2.3 View組件的變形 101
5.2.4 View組件的回呼函數 104
5.2.5 View元件的其他屬性 106
5.2.6 設備放置狀態、根View與onLayout回呼函數 106
5.2.7 pointerEvents屬性 109
5.3 Image組件 111
5.3.1 載入網路圖片 111
5.3.2 載入靜態圖片資源 112
5.3.3 載入資源檔中的圖片 112
5.3.4 動態載入手機中的圖片資源 112
5.3.5 Image元件的樣式 113
5.3.6 Image元件顯示特性 114
5.3.7 Image元件的其它他屬性 117
5.4 可觸摸組件 117
5.4.1 可觸摸組件類型 118
5.4.2 TouchableOpacity組件 118
5.4.3 TouchableHighlight組件 118
5.4.4 其他屬性 120
5.5 加深理解三大組件 120
5.5.1 使用巡覽列的導航框架 121
5.5.2 等比放大無丟失顯示圖片 125
5.5.3 寬、高動態變化的元件呈現 128
第6章Text、TextInput等相關知識 129
6.1 Text組件 129
6.1.1 樣式鍵設置 129
6.1.2 其他屬性 131
6.1.3 Text組件的嵌套 131
6.1.4 文本顯示的陰影效果 132
6.1.5 Text居中顯示 133
6.1.6 在字串中插入圖像 135
6.2 Text組件在兩個平臺上的不同表現 136
6.2.1 只指定fontSize,不指定height 137
6.2.2 只指定height,不指定fontSize 137
6.2.3 fontSize等於height 137
6.2.4 height大於fontSize 138
6.2.5 邊框在兩個平臺上的不同表現 138
6.3 TextInput組件 140
6.3.1 TextInput元件樣式鍵 140
6.3.2 TextInput元件的屬性 140
6.3.3 TextInput元件iOS平臺專有屬性 141
6.3.4 TextInput元件Android平臺專有屬性 142
6.3.5 TextInput元件的成員函數 142
6.4 TextInput組件在兩個平臺上的不同表現 143
6.4.1 Android平臺的輸入下畫線 143
6.4.2 父組件的alignItems鍵失效 144
6.4.3 只指定fontSize,不指定height 145
6.4.4 height等於fontSize 145
6.4.5 height大於fontSize 146
6.4.6 邊框在兩個平臺上的不同表現 146
6.5 TextInput組件的生命週期 147
6.5.1 獲得焦點 147
6.5.2 用戶輸入 147
6.5.3 用戶按下提交鍵 147
6.5.4 失去焦點 148
6.6 軟鍵盤與鍵盤事件 148
6.7 組件的引用 151
6.7.1 定義組件引用 151
6.7.2 得到系統定義的元件引用 151
6.7.3 調用元件的公開成員函數 152
6.7.4 重新設定元件的屬性 152
6.7.5 獲得元件的位置 154
6.8 跨平臺狀態列組件 155
6.8.1 StatusBar元件屬性 155
6.8.2 StatusBar元件使用示例 156
6.8.3 手機狀態列在開發中的處理 157
6.8.4 StatusBarIOS API 158
6.9 高度自增長的擴展TextInput組件 159
6.10 訪問作業系統剪貼板 160
第7章元件生命週期、資料存儲及React Native應用實現步驟 163
7.1 組件生命週期 163
7.1.1 getInitialState 163
7.1.2 getDefaultProps 163
7.1.3 componentWillMount 164
7.1.4 componentDidMount 164
7.1.5 componentWillReceiveProps 164
7.1.6 shouldComponentUpdate 165
7.1.7 componentWillUpdate 165
7.1.8 componentDidUpdate 165
7.1.9 componentWillUnmount 166
7.2 讀取JSON文件 166
7.3 資料持久化操作 167
7.3.1 flow語法檢查器 167
7.3.2 寫入資料、錯誤捕捉 168
7.3.3 讀取數據 170
7.3.4 AsyncStorage API存儲資料的無序性 173
7.3.5 刪除資料 173
7.3.6 修改資料 175
7.3.7 JSON物件存儲 175
7.3.8 讀取JSON對象 176
7.4 資料表操作 176
7.5 React Native應用實現步驟、日記常式(上) 176
7.5.1 應用原型 177
7.5.2 基礎元件結構設計 178
7.5.3 使用React Native元件搭建靜態介面 180
7.5.4 React Native組件分層 188
7.5.5 實現各元件業務邏輯 189
7.5.6 日記常式(上)總結 190
第8章ScrollView和ListView 200
8.1 ScrollView組件 200
8.1.1 ScrollView元件屬性 200
8.1.2 ScrollView元件iOS平臺專有屬性 201
8.1.3 ScrollView元件Android平臺專有屬性 202
8.1.4 ScrollView元件的公開成員函數 203
8.1.5 RefreshControl組件 203
8.1.6 ScrollView組件基本用法 204
8.2 ListView組件 206
8.2.1 ListView元件的屬性 207
8.3 簡單的列表 208
8.3.1 準備列表的資料來源 209
8.3.2 聲明狀態機變數 209
8.3.3 將資料來源中的資料拷貝到DataSource中 210
8.3.4 定義如何渲染列表中的每一行 210
8.3.5 實現簡單的列表 211
8.3.6 列表欄的高級處理 217
8.4 帶分段標誌的清單 217
8.4.1 準備資料來源 218
8.4.2 聲明狀態機變數 218
8.4.3 將資料來源中的資料拷貝到DataSource中 219
8.4.4 定義如何渲染每個分欄 220
8.4.5 定義如何渲染首、尾欄 220
8.4.6 列表間隔渲染 220
8.4.7 實現帶分段標誌的清單 221
8.4.8 總結 221
8.5 日記常式(下)總結 221
第9章等待提示條、進度條和Switch 222
9.1 ProgressBarAndroid組件 222
9.1.1 ProgressBarAndroid元件樣式設置 222
9.1.2 ProgressBarAndroid其他屬性 222
9.1.3 Android平臺等待提示條 222
9.1.4 React Native框架中計時器的使用 224
9.1.5 Android平臺進度條 225
9.2 iOS進度條元件 226
9.2.1 ProgressViewIOS元件樣式設置 226
9.2.2 ProgressViewIOS其他屬性 226
9.2.3 iOS平臺進度條 226
9.3 iOS平臺等待提示條 227
9.3.1 ActivityIndicatorIOS元件樣式設置 227
9.3.2 ActivityIndicatorIOS其他屬性 227
9.3.3 iOS平臺等待提示條 227
9.4 Switch組件 229
9.4.1 Switch元件樣式設置 229
9.4.2 Switch其他屬性 229
9.4.3 Switch元件的使用 229
第10章導航組件 231
10.1 導航元件的屬性 231
10.1.1 回呼函數 231
10.1.2 其他屬性 232
10.2 導航器 232
10.3 NavigationBar 233
第11章手勢識別 240
11.1 PanResponder API 240
11.2 監視器 240
11.2.1 指定監視區域 241
11.2.2 定義監視器相關變數 241
11.2.3 準備監視器的事件處理函數 241
11.2.4 建立監視器 242
11.2.5 將監視器與監視區域掛接 242
11.3 監視事件的生命週期 242
11.3.1 單次點擊事件的生命週期 243
11.3.2 單次點擊事件處理 245
11.3.3 移動手勢事件的生命週期 245
11.3.4 監視器異常事件 247
11.4 手勢識別處理常式 247
11.4.1 單點手勢——點擊、拖動選擇百分比參數 247
11.4.2 單點手勢——帶導槽的滑動來電接聽或拒接介面 249
11.4.3 單點手勢——滑動解鎖螢幕介面 252
11.4.4 單點手勢——單點任意方向拉動選擇介面 254
11.4.5 兩點手勢 257
第12章網路 258
12.1 獲取網路狀態 258
12.1.1 得到當前網路狀態 258
12.1.2 監聽網路狀態改變事件 259
12.1.3 簡單判斷是否有網路連接 260
12.1.4 判斷當前連接是否收費 260
12.2 通過HTTP、HTTPS與網路側交換資料 260
12.2.1 發送請求 260
12.2.2 接收回應 263
12.3 在React Native開發中使用AJAX技術 264
第13章網頁流覽器、音視頻媒體播放 266
13.1 WebView元件樣式設置 266
13.2 WebView元件其他屬性 266
13.2.1 非回呼函數屬性 266
13.2.2 回呼函數屬性 267
13.2.3 平臺獨有屬性 267
13.2.4 WebView元件成員函數 268
13.3 網頁流覽器使用常式 268
13.3.1 流覽網頁常式 268
13.3.2 載入本地網頁常式 271
13.4 音視頻媒體播放 273
第14章圖像的遍歷、存取與顯示 274
14.1React Native開發中iOS平臺程式庫的使用 274
14.2 獲取手機中所有的圖片資訊 276
14.3 圖片資訊詳解 278
14.3.1 Android平臺圖片資訊 278
14.3.2 iOS平臺圖片資訊 278
14.4 顯示從CameraRoll API得到的圖片 279
14.5 為使用者提供圖片選擇介面 280
14.6 圖片的保存與讀取顯示 282
14.6.1 保存圖像資料 282
14.6.2 讀取並顯示圖片 283
第15章選擇器、位置相關和應用狀態 284
15.1 日期、時間選擇器 284
15.1.1 DatePickerAndroid API 284
15.1.2 TimePickerAndroid API 286
15.1.3 DatePickerIOS組件 287
15.2 Picker組件 289
15.2.1 Picker元件的樣式設置 289
15.2.2 Picker元件的屬性 289
15.2.3 Picker.Item元件屬性 290
15.2.4 Picker元件常式 290
15.3 PickerIOS 294
15.4 MapView組件 295
15.4.1 MapView元件樣式設置 296
15.4.2 MapView元件特有的跨平臺屬性 296
15.4.3 MapView元件常式 297
15.5 AppState API 299
15.5.1 AppState API用途與用法 299
15.5.2 AppState API常式 299
15.6 獲取地理位置 300
15.7 VibrationIOS API 302
第16章使用ES 6語法開發 303
16.1 React Native組件導入 303
16.2 屬性聲明 304
16.3 成員變數聲明 304
16.4 狀態機變數聲明 305
16.5 回呼函數綁定 306
16.6 類的靜態成員變數與靜態成員函數 307
第17章混合開發高級篇 309
17.1 使用Objective-C語言創建私有的React Native元件 309
17.1.1 增加FLAnimatedImage程式庫 309
17.1.2 創建視圖管理類 311
17.1.3 封裝開原始程式碼中的視圖類 312
17.1.4 在React Native側調用私有組件 314
17.1.5 常式運行效果 315
17.2 使用Swift語言創建私有的React Native元件 316
17.2.1 整合開源項目 316
17.2.2 建立組件管理者和橋接文件 319
17.2.3 Objective-C與React Native介面部分 321
17.2.4 使用Swift語言實現元件控制 322
17.2.5 在React Native側調用私有組件 324
17.2.6 常式運行效果 325
17.3 使用Android SDK創建私有的React Native元件 325
17.3.1 準備原生代碼UI組件 326
17.3.2 實現原生UI管理類 327
17.3.3 創建原生UI實例 328
17.3.4 實現對屬性的支援 328
17.3.5 建立原生UI包 328
17.3.6 註冊原生UI管理類 329
17.3.7 對應的React Native側實現 329
17.3.8 運行俯視視圖常式 331
第18章專案配置、生成發佈版本安裝包及其他 332
18.1 iOS平臺專案配置 332
18.2 iOS平臺應用發佈 336
18.3 Android平臺專案配置 336
18.4 Android平臺應用生成發佈版本安裝包 338
18.4.1 生成發佈金鑰 338
18.4.2 修改gradle設定檔 338
18.4.3 生成發佈版本安裝包 339
18.5 其他組件與API 339
18.5.1 動畫相關 339
18.5.2 其他組件與API 340
附錄AECMAScript 2015語法參考 341
A.1 解構賦值 341
A.2 箭頭函數 342
A.3 for in迴圈語句 343
A.4 JSX的延展屬性(Spread Attributes) 343
A.5 Promise機制 344
A.6 陣列的map成員函數 345
A.7 ES 6語法中的類與繼承 345
A.8 三元運算子 346)
-----------------------------------------------------------
分享閱讀 書籍狀態請詳看圖示