本書適合有一定Android基礎的讀者閱讀,書中涵蓋多個技術熱點,其中包括下拉刷新、HelloCharts圖表庫、BoomMenu圓形菜單、BubbleViews心形泡泡庫、第三方視頻播放等。本書在結構設計上采用由小項目逐漸深入的形式,然后引出一個黑馬頭條項目,講解企業項目的開發流程。本書共13章,第1~4章每章分別講解小項目,第5~13章每章分別講解黑馬頭條項目的一個模塊,包括從項目分析、效果展示到項目開發、打包發布的全過程。
本書既可作為高等院校本、專科計算機相關專業的教材,也可作為社會培訓教材,是一本適合廣大編程愛好者參考和學習的書籍。
綜合黑馬程序員的Android課程內容,技術新穎,實戰性強。特色1:多個熱點技術包含多個熱點技術,如下拉刷新、HelloCharts圖表庫、BoomMenu圓形菜單、BubbleViews心形泡泡庫、百度地圖、第三方視頻播放等。特色2:完美的結構設計在結構設計上,采用由四個小項目逐漸深入,然后引出一個黑馬頭條項目的形式,循序漸進地引領讀者學習。特色3:一個企業級項目包含一個綜合項目黑馬頭條,從項目分析、效果展示,到項目開發、打包發布等講解了一個項目的完整開發流程。特色4:項目 任務相結合將黑馬頭條項目拆分成7個功能模塊,93個任務,來細化講解。在講解每個功能時,均有【任務綜述】【任務分析】【任務實施】等內容,步驟清晰便于學習。
傳智播客和黑馬程序員
江蘇傳智播客教育科技股份有限公司(簡稱傳智播客)是一家專門致力于培養高素質軟件開發人才的科技公司,黑馬程序員是傳智播客旗下的高端IT教育品牌。
黑馬程序員的學員多為大學畢業后想從事IT行業,但各方面條件還不成熟的年輕人。黑馬程序員的學員篩選制度非常嚴格,包括嚴格的技術測試、自學能力測試以及性格測試、壓力測試、品德測試等。百里挑一的殘酷篩選制度確保了學員質量,并降低了企業的用人風險。
自黑馬程序員成立以來,教學研發團隊一直致力于打造精品課程資源,不斷在產、學、研三個層面創新自己的執教理念與教學方針,并集中黑馬程序員的優勢力量,有針對性地出版了計算機系列教材五十多種,制作了教學視頻數十套,并發表了各類技術文章數百篇。
黑馬程序員不僅斥資研發IT系列教材,還為高校師生提供以下配套學習資源與服務。
為大學生提供的配套服務:
(1) 專業的輔助學習平臺博學谷(http://yx.boxuegu.com),有專業老師在線為您答疑解惑。
(2) 針對高校學生在學習過程中存在的壓力等問題,我們還面向大學生量身打造了播妞。播妞不僅致力推行快樂學習,還會有定期的助學紅包雨。有興趣的同學可添加播妞微信/QQ: 208695827。
(3) 高校學生也可掃描右方二維碼,加入播妞粉絲團,獲取最新學習資源,與播妞一起快樂學習。
為IT教師提供的配套服務:
針對高校教學,黑馬程序員為IT系列教材精心設計了教案 授課資源 考試系統 題庫 教學輔助案例的系列教學資源。高校老師請關注碼大牛老師微信/QQ: 2011168841,獲取教材配套資源,也可以掃描右方二維碼,加入專為IT教師打造的師資服務平臺教學好助手,獲取黑馬程序員最新教師教學輔助資源相關動態。
為什么要學習Android
Android是Google公司開發的基于Linux的開源操作系統,主要應用于智能手機、平板電腦等移動設備,還可用于穿戴設備、智能家居等領域。經過短短幾年的發展,Android系統在全球得到了大規模推廣。據不完全統計,Android系統已經用于全球80%以上的智能手機,中國市場的占有率更是高達90%以上,因此越來越多的人開始學習Android技術,以適應市場需并尋求更廣闊的發展空間。
如何使用本書
本書適合有一定Android基礎的讀者閱讀,書中涵蓋多個技術熱點,其中包括下拉刷新、HelloCharts圖表庫、BoomMenu圓形菜單、BubbleViews心形泡泡庫、第三方視頻播放等。若讀者沒有Android基礎,建議讀者先學習《Android移動開發基礎案例教程》,然后再學習本書。
本書在結構設計上采用由小項目逐漸深入的形式,然后引出一個黑馬頭條項目,講解企業項目的開發流程。本書共13章,第1~4章分別講解一個小項目,第5~13章講解一個黑馬頭條項目。具體如下。
第1章主要講解彈幕項目的實現過程,其中包括彈幕下方的視頻播放、彈幕文本的發送等。
第2章主要講解VR項目的實現過程,其中包括全景圖片與全景視頻介紹、VR全景圖片的預覽、VR全景視頻的播放等。
第3章主要講解HelloCharts圖表庫的使用,其中以餅狀圖、柱狀圖、線形圖為例進行演示。
第4章主要講解3D相冊的實現過程,其中包括圖片展示與滑動效果等。
第5~13章分別講解黑馬頭條項目的各個模塊,其中包括項目綜述、歡迎模塊、首頁模塊、統計模塊、視頻模塊、我模塊、設置模塊和項目上線。
讀者在閱讀本書的過程中難免會遇到一些問題,如果是對某個知識點不熟悉,則可以先行查閱,然后再進行項目開發。黑馬頭條項目是一個完整的項目,建議讀者先厘清思路,多思考、多分析、多實踐,逐步完成項目的開發。
致謝
本書的編寫和整理工作由傳智播客教育科技股份有限公司完成,主要參與人員有呂春林、陳歡、柴永菲、張澤華、李印東、馬偉奇、劉峰、金興、邱本超、殷凱等,全體參編人員在將近一年的編寫過程中付出了很多辛勤的汗水,在此一并表示衷心的感謝。
前言Android企業級項目實戰教程意見反饋
盡管我們盡了最大的努力,但本書中難免存在不妥之處,歡迎各界專家和讀者朋友們來信來函給予寶貴意見,我們將不勝感激。讀者在閱讀本書時,如發現任何問題或有不認同之處,可以通過發送電子郵件與我們取得聯系。
請發送電子郵件至itcast_book@vip.sina.com。
黑馬程序員
2017年9月于北京
目錄
第1章彈幕1
1.1彈幕程序1
任務綜述1
【任務11】彈幕界面1
【任務12】彈幕界面邏輯代碼 3
1.2本章小結7
第2章VR8
2.1全景圖片與全景視頻介紹8
2.2VR主界面9
任務綜述9
【任務21】VR主界面9
【任務22】VR主界面邏輯代碼10
2.3VR全景圖片11
任務綜述11
【任務23】VR全景圖片界面 11
【任務24】VR全景圖片界面邏輯代碼13
2.4VR全景視頻14
任務綜述14
【任務25】VR全景視頻界面15
【任務26】VR全景視頻界面邏輯代碼16
2.5本章小結19
第3章圖表庫20
3.1線形圖20
任務綜述20
【任務31】線形圖界面20
【任務32】創建ViewPagerAdapter22
【任務33】線形圖界面邏輯代碼23目錄Android企業級項目實戰教程3.2餅狀圖26
任務綜述26
【任務34】餅狀圖界面26
【任務35】餅狀圖界面邏輯代碼27
3.3柱狀圖30
任務綜述30
【任務36】柱狀圖界面30
【任務37】柱狀圖界面邏輯代碼31
3.4本章小結33
第4章3D相冊34
4.1相冊34
任務綜述34
【任務41】相冊界面34
【任務42】相冊界面Item36
【任務43】創建AlbumBean38
【任務44】相冊界面Adapter38
【任務45】相冊界面邏輯代碼39
4.2本章小結43
第5章項目綜述44
5.1項目分析44
5.1.1項目名稱44
5.1.2項目概述44
5.1.3開發環境44
5.1.4模塊說明45
5.2效果展示45
5.2.1歡迎界面與主界面45
5.2.2新聞詳情界面與Python學科界面45
5.2.3統計詳情界面46
5.2.4視頻詳情界面48
5.2.5我界面48
5.2.6個人資料界面51
5.3本章小結53
第6章歡迎模塊54
6.1歡迎界面54
任務綜述54
【任務61】歡迎界面 54
【任務62】歡迎界面邏輯代碼55
6.2導航欄56
任務綜述56
【任務63】標題欄56
【任務64】底部導航欄 57
【任務65】底部導航欄邏輯代碼60
6.3本章小結 63
第7章首頁模塊64
7.1搭建服務器64
任務綜述64
【任務71】首頁廣告欄數據64
【任務72】首頁新聞列表數據66
7.2工具類67
任務綜述67
【任務73】創建Constant類67
【任務74】創建JsonParse類68
【任務75】創建UtilsHelper類68
7.3首頁69
任務綜述69
【任務76】水平滑動廣告欄界面69
【任務77】首頁界面72
【任務78】自定義控件WrapRecyclerView76
【任務79】首頁界面Item80
【任務710】創建NewsBean83
【任務711】創建AdBannerFragment85
【任務712】創建AdBannerAdapter86
【任務713】首頁界面Adapter88
【任務714】首頁界面邏輯代碼90
7.4新聞詳情 96
任務綜述96
【任務715】新聞詳情界面97
【任務716】新聞詳情界面邏輯代碼99
7.5Python學科106
任務綜述106
【任務717】Python學科界面106
【任務718】Python學科界面Item107
【任務719】創建PythonBean108
【任務720】Python學科界面Adapter109
【任務721】Python學科界面邏輯代碼110
7.6本章小結113
第8章統計模塊115
8.1統計115
任務綜述115
【任務81】統計界面115
【任務82】統計界面邏輯代碼117
8.2統計詳情120
任務綜述120
【任務83】Android統計詳情界面120
【任務84】Android統計詳情界面邏輯代碼122
【任務85】Java統計詳情界面124
【任務86】Java統計詳情界面邏輯代碼126
8.3本章小結130
第9章視頻模塊131
9.1視頻列表131
任務綜述131
【任務91】視頻列表界面131
【任務92】視頻列表界面Item132
【任務93】創建VideoBean133
【任務94】視頻列表界面Adapter135
【任務95】視頻列表界面數據136
【任務96】視頻列表界面邏輯代碼138
9.2視頻詳情140
任務綜述140
【任務97】視頻詳情界面141
【任務98】視頻目錄列表Item148
【任務99】畫面尺寸菜單149
【任務910】視頻目錄列表Adapter151
【任務911】創建TopLineApplication154
【任務912】創建VideoDetailPagerAdapter155
【任務913】創建ParamsUtils156
【任務914】視頻播放進度條157
【任務915】畫面尺寸菜單邏輯代碼159
【任務916】視頻清晰度菜單邏輯代碼160
【任務917】視頻詳情界面邏輯代碼162
9.3本章小結164
第10章我模塊(一)166
10.1創建數據庫166
任務綜述166
【任務101】創建SQLite數據庫166
【任務102】創建DBUtils類167
【任務103】創建UserBean168
10.2我169
任務綜述169
【任務104】我界面169
【任務105】廣播接收者180
【任務106】我界面邏輯代碼181
10.3注冊185
任務綜述185
【任務107】注冊界面186
【任務108】MD5加密算法192
【任務109】注冊界面邏輯代碼193
10.4登錄196
任務綜述196
【任務1010】登錄界面196
【任務1011】登錄界面邏輯代碼199
10.5個人資料203
任務綜述203
【任務1012】個人資料界面203
【任務1013】個人資料界面邏輯代碼207
10.6個人資料修改214
任務綜述214
【任務1014】個人資料修改界面215
【任務1015】個人資料修改界面邏輯代碼216
10.7本章小結221
第11章我模塊(二)222
11.1日歷222
任務綜述222
【任務111】日歷界面222
【任務112】日歷界面邏輯代碼224
11.2星座226
任務綜述226
【任務113】星座界面226
【任務114】創建ConstellationBean234
【任務115】星座界面數據236
【任務116】星座界面邏輯代碼240
11.3星座選擇244
任務綜述244
【任務117】星座選擇界面244
【任務118】星座選擇界面Item246
【任務119】星座選擇界面Adapter247
【任務1110】星座選擇界面數據249
【任務1111】星座選擇界面邏輯代碼250
11.4涂鴉252
任務綜述252
【任務1112】涂鴉界面252
【任務1113】涂鴉顏色選擇界面264
【任務1114】創建ColorsBean271
【任務1115】創建BigSizeBean272
【任務1116】涂鴉界面邏輯代碼273
11.5地圖280
任務綜述280
【任務1117】地圖界面280
【任務1118】地圖界面邏輯代碼281
11.6本章小結286
第12章設置模塊287
12.1收藏287
任務綜述287
【任務121】收藏界面287
【任務122】收藏界面Item289
【任務123】收藏界面Adapter294
【任務124】收藏新聞信息表297
【任務125】收藏界面邏輯代碼300
12.2設置302
任務綜述302
【任務126】設置界面303
【任務127】設置界面邏輯代碼305
12.3修改密碼308
任務綜述308
【任務128】修改密碼界面308
【任務129】修改密碼界面邏輯代碼310
12.4設置密保313
任務綜述313
【任務1210】設置密保界面314
【任務1211】設置密保界面邏輯代碼316
12.5本章小結320
第13章項目上線321
13.1代碼混淆321
13.1.1修改build.gradle文件321
13.1.2編寫proguardrules.pro文件321
13.2項目打包323
13.3項目加固326
13.4項目發布330
13.5本章小結332