●目錄 章常用控件 001以折疊方式實現隱藏或顯示TextView 002使用可拉伸9patch圖設置TextView背景 003使用TextSwitcher平滑切換多個標題 004在EditText中彈出輸入電話號碼的鍵盤 005動態創建多個自定義風格的CheckBox 006使用RadioButton創建單選按鈕 007使用CheckedTextView創建單選按鈕 008在ListView列表項中自定義單選按鈕 009使用資源創建自定義背景的橢圓按鈕 010使用ShapeDrawable創建漸變圓角按鈕 011在ListView列表項文本的右端添加按鈕 012將FloatingActionButton錨定到指定控件 013使用ZoomControls實現放大和縮小圖像 014使用StackView實現堆疊顯示多幅圖像 015使用ScrollView實現上下滑動切換圖像 016使用HorizontalScrollView水平切換圖像 017在RecyclerView中按照文件屬性排序 018使用RecyclerView實現簡單的ListView 019使用ExpandableListView分類顯示文件 020使用NestedScrollView實現嵌套滾動 021在ViewPager輪播時實現立體旋轉切換 022自定義selector以透明前景切換控件 023使用ViewOutlineProvider裁剪控件外形 024使用SwipeRefreshLayout掃動刷新UI 025使用自定義Behavior實現滑動遮蓋效果 026創建百分比數字跟隨進度改變的進度條 027使用BottomNavigationBar實現底部導航 028使用兩個Spinner實現省市兩級聯動 029使用BackgroundColorSpan定制背景 第2章通知欄 030動態設置當前應用的標題欄文本 031動態設置當前應用的標題欄背景 032動態隱藏或顯示當前應用標題欄 033自定義TextView創建漸變標題欄 034使用自定義布局創建個性化標題欄 035在標題欄左側添加默認的後退按鈕 036在標題欄右側添加分享按鈕分享文本 037使用SearchView在標題欄添加搜索框 038使用SearchManager實現標題欄搜索 039使用ActionBar通過布局定制標題欄 040使用UI標志動態隱藏或顯示通知欄 041使用UI標志動態隱藏或顯示通知欄圖標 042使用窗口標志實現半透明顯示通知欄 043使用指定顏色動態設置通知欄背景色 044將應用的背景圖像擴展至通知欄 045在通知欄上添加通知並實現跳轉功能 046使用Notification在通知欄上添加圖標 047使用RemoteViews自定義通知欄視圖 048以懸掛式窗口顯示新增的通知欄任務 049允許直接在通知欄上顯示消息內容 050禁止在通知欄上以右滑方式移除通知 051在向通知欄發送消息時同時振動手機 052在滾動文本時自動隱藏或顯示工具欄 053使用Toolbar在工具欄上添加查找按鈕 054使用Toolbar為導航圖標添加關閉功能 055在拖動改變控件大小時實現工具欄跟隨 056創建CollapsingToolbarLayout工具欄 057使用Snackbar在底部創建浮出信息欄 058自定義Snackbar文本顏色和字體大小 059在Snackbar上新增自定義風格布局 第3章菜單 060在ActionBar上以按鈕風格顯示菜單 061使用ActionBar在標題欄添加下拉菜單 062在ActionBar上使用XML文件創建菜單 063使用Toolbar在工具欄上添加下拉菜單 064使用ActionProvider創建二級菜單 065在右上角二級菜單中實現單選按鈕風格 066在右上角二級菜單中實現多選框風格 067使用DrawerLayout創建抽屜式側滑菜單 068使用手機菜單鍵控制側滑菜單是否顯示 069在側滑菜單中使用NavigationView導航 070使用TabLayout高仿微信底部導航菜單 071在彈出底部菜單時主窗口立即變暗 072在長時間按住控件時彈出上下文菜單 第4章圖形和圖像 073通過像素操作在圖像上添加馬賽克特效 074通過像素操作實現為圖像添加冰凍效果 075通過像素操作將彩色圖像改變為懷舊風格 076使用PorterDuffXfermode裁剪六邊形 077使用PorterDuffXfermode摳取異形圖像 078使用ColorMatrix增強圖像顏色對比度 079使用ColorMatrix為圖像添加加亮效果 080使用ColorMatrix調整圖像的紅色色調 081使用ColorMatrix旋轉圖像的顏色色相 082自定義ColorMatrix改變圖像對比度 083使用Matrix實現按照指定角度旋轉圖像 084通過改變圖像透明度重疊顯示兩幅圖像 085根據指定顏色過濾ImageView的圖像 086使用高斯矩陣模板實現圖像的柔化特效 087使用正弦函數創建波浪起伏風格的圖像 088使用BitmapFactory控制圖像采樣比例 089使用SweepGradient創建多色掃描圖 090使用RadialGradient繪制電波擴散圖 091使用BlurMaskFilter為圖像添加輪廓陰影 092使用ComposeShader實現內陰影圖像 093使用EmbossMaskFilter強化圖像輪廓 094使用GradientDrawable創建漸變色邊框 095使用VectorDrawable調整矢量圖形亮度 096使用ClipDrawable裁剪圖像實現拉幕效果 097使用ShapeDrawable裁剪五角星圖像 098使用NinePatchDrawable設置背景 099使用DashPathEffect創建虛線邊框 100使用ComposePathEffect組合路徑特效 101使用ImageView顯示XML路徑矢量圖形 102使用Region的INTERSECT裁剪扇形圖像 103使用裁剪路徑將圖像從矩形裁剪成橢圓 104在自定義View中使用扇形裁剪圖像 105根據行列數量將圖像切割成碎片並拼圖 106使用BitmapRegionDecoder加載大圖 第5章動畫 107使用ObjectAnimator創建坐標平移動畫 108使用ObjectAnimator創建波紋擴散動畫 109使用ValueAnimator動態繪制桃心圖形 110使用AnimationSet組合多個不同的動畫 111自定義TypeEvaluator合成多方向的位移 112使用PropertyValuesHolder實現彈簧動畫 113自定義selector實現以動畫形式改變透明度 114使用StateListAnimator實現狀態切換動畫 115自定義TypeEvaluator以加速動畫顯示字母 116使用BounceInterpolator實現彈跳動畫 117使用矢量(Vector)動畫模擬鬧鐘耳朵的擺動 118控制trimPathEnd動態生成非連續矢量圖 119改變矢量數據實現不同圖形數字的平滑過渡 120自定義TimeInterpolator控制轉圈進度動畫 121使用animatedselector實現輪播多幅圖像 122使用animationlist實現兩幅圖像的切換 123使用AnimationDrawable逐幀播放圖像 124使用AnimatedVectorDrawable旋轉圖形 125以旋轉淡出的動畫效果切換兩個Activity 126在切換Activity的轉場動畫素 127在過渡Activity時禁止部分控件產生動畫 128使用指定的裁剪區域動態切換兩個Activity 129在關閉應用(Activity)時顯示退場動畫 130使用轉場動畫Slide切換兩個Activity 131使用TransitionSet組合Explode和Fade動畫 132使用TransitionManager實現縮放過渡動畫 133使用TransitionManager實現繞Y軸旋轉動畫 134使用多個TranslateAnimation實現抖動窗口 135使用LayoutTransition實現布局改變動畫 136使用TransitionDrawable動態改變圖像顏色 137在GridView的各個網格中實現Explode動畫 138使用layoutAnimation平移RecyclerView網格 139在ListView列表項上實現抽屜式滑動動畫 140在ViewPager中實現漸變淡入的轉場動畫 141使用FragmentTransaction實現轉場動畫 142使用PatternPathMotion實現路徑過渡動畫 143使用RippleDrawable創建波紋擴散動畫 144自定義GLSurfaceView實現波浪起伏的動畫 145自定義Animation實現硬幣正反面繞Y軸旋轉 第6章文件和數據 146采用DOM方式解析XML文件的內容 147采用Pull方式解析XML文件的內容 148使用JSONArray解析JSON串的多個對像 149使用JSONArray解析JSON串的多個鍵值 150使用JSONTokener獲取JSON的不同對像 151使用JSONTokener解析JSON非對像文本 152使用Gson解析JSON字符串的單個對像 153使用Intent在Activity之間傳遞基本數據 154使用Intent在Activity之間傳遞數組數據 155使用Intent在Activity之間傳遞圖像數據 156使用Intent在Activity之間傳遞多幅圖像 157在Intent傳遞數據時使用Bundle攜帶數據 158使用Bundle從Activity向Fragment傳遞數據 159根據指定網址應用安裝包到手機SD卡 160僅在WiFi時執行DownloadManager 161使用AsyncTask實現異步訪問網絡圖像 162在進度條上顯示AsyncTask的進度 163以數據流形式加載並顯示指定網址的圖像 164使用正則表達式校驗在輸入框的輸入內容 165使用隨機數生成驗證碼圖像並提交驗證 166將塗鴉內容在存儲卡上保存為圖像文件 167使用BitmapFactory讀取SD卡圖像文件 168在選擇照片窗口中選擇圖像文件並顯示 169使用CookieManager讀取和保存數據 170使用PreferenceScreen跳轉到顯示設置 171使用PreferenceFragment實現頁面切換 172使用EditTextPreference實現文本讀寫 173使用SwitchPreference讀寫開關狀態值 174使用CheckBoxPreference實現多選功能 175使用MultiSelectListPreference實現多選 第7章繫統和設備 176使用ContentResolver獲取手機短信信息 177使用ContentResolver獲取所有聯繫人信息 178使用ContentResolver查詢聯繫人電話號碼 179使用ContentResolver動態新增聯繫人信息 180使用ContentResolver動態修改聯繫人信息 181使用ContentResolver動態刪除聯繫人信息 182使用PhoneStateListener監聽來電號碼 183使用BroadcastReceiver監聽撥出號碼 184動態注冊BroadcastReceiver監聽網絡狀態 185使用BroadcastReceiver實現開機自啟動 186使用BroadcastReceiver獲取電量百分比 187使用ConnectivityManager檢測數據連接 188使用WifiManager動態打開或關閉WiFi 189使用LocationManager判斷GPS是否開啟 190使用TelephonyManager獲取運營商等信息 191使用TelephonyManager檢測卡槽類型 192使用PackageManager獲取包名版本等信息 193使用WallpaperManager隨機更換壁紙 194使用RingtoneManager自定義來電鈴聲 195通過重力傳感器控制飛行器的軌跡和速度 196使用加速度傳感器實現微信的搖一搖功能 197使用傳感器監測手機周圍光線亮度變化 198使用方向傳感器實現自制指南針 199使用DisplayMetrics獲取屏幕分辨率 200使用StatFs獲取存儲卡的空間大小信息 201使用Camera實現打開或關閉手電筒 202使用Camera捕捉前置和後置攝像頭畫面 203使用TextureView實現照相機的預覽功能 204通過處理按鍵實現雙擊後退鍵退出應用 205使用GestureDetector實現橫向滑動切換 206使用鎖屏標志實現在鎖屏時是否顯示窗口 207在當前應用中實現關機和重啟功能 第8章Intent 208使用Intent啟動百度地圖進行騎行導航 209使用Intent啟動百度地圖查詢公交線路 210使用Intent啟動百度地圖查詢步行線路 211使用Intent啟動百度地圖查詢興趣點 212使用Intent啟動百度地圖根據地名定位 213使用Intent啟動百度地圖助手搜索地點 214使用Intent在百度地圖中展示詳情頁 215使用Intent啟動百度地圖查詢實時公交 216使用Intent啟動百度地圖查詢實時路況 217使用Intent啟動百度地圖顯示實時彙率 218使用Intent直接跳轉到百度地圖App界面 219使用Intent啟動騰訊地圖查詢駕車線路 220使用Intent啟動騰訊地圖搜索感興趣內容 221使用Intent啟動騰訊地圖顯示指定位置 222使用Intent啟動QQ瀏覽器顯示騰訊地圖 223使用Intent將文本內容僅分享到微信 224使用Intent將本地圖像發送到微信朋友圈 225使用Intent將圖像發送到微信我的收藏 226使用Intent將視頻發送到微信我的收藏 227使用Intent將本地視頻分享給微信好友 228使用Intent直接調啟微信的掃一掃功能 229使用Intent直接跳轉到微信主操作界面 230使用Intent根據號碼啟動QQ聊天界面 231使用Intent直接跳轉到QQ主操作界面 232使用Intent根據組件名稱啟動QQ 233使用Intent直接跳轉到QQ的我的電腦 234使用Intent將本地圖像發送到QQ的我的電腦 235使用Intent將多首歌曲發送到QQ的我的電腦 236使用Intent將音樂文件分享到QQ好友 237使用Intent將多幅圖像發送到QQ好友 238使用Intent實現截取屏幕部分區域 239使用Intent調用照相機拍照並裁剪頭像 240使用Intent實現允許或禁止按鍵截屏 241使用Intent在應用市場中查找包名詳情 242使用Intent根據包名卸載手機應用 243使用Intent根據內容跳轉到搜索工具 244使用Intent指定應用打開PDF文件 245使用Intent啟動應用打開文本文件 246使用Intent啟動應用打開Excel文件 247使用Intent在文件窗口中篩選安裝文件 248使用Intent在文件窗口中選擇圖像文件 249使用Intent查詢支持多個圖像分享包名 250使用Intent啟用默認網絡文件器 251使用Intent發送帶附件的郵件 252使用Intent跳轉到繫統無障礙設置界面 第9章第三方SDK開發 253使用騰訊SDK將指定圖像分享給QQ好友 254使用騰訊SDK將指定鏈接分享到QQ空間 255使用騰訊SDK將本地視頻發布到QQ空間 256使用微信SDK將本地圖像分享到朋友圈 257使用微信SDK將本地圖像分享至微信好友 258使用微信SDK將音樂鏈接分享至微信好友 259使用微信SDK將視頻鏈接分享到朋友圈 260使用新浪SDK將文本分享到當前微博 261使用新浪SDK實現獲取最新發布的微博 262使用新浪SDK實現第三方登錄微博賬號 263使用新浪SDK實現分享鏈接地址至微博 264使用新浪SDK實現跳轉到微博賬戶簡介 265使用百度SDK獲取當前手機的經緯度值 266使用百度SDK在地圖中定位指定的地名 267使用百度SDK查詢指定地點的衛星圖 268使用百度SDK在地圖上自定義熱力圖 269使用百度SDK實現計算指定範圍的面積 270使用百度SDK在地圖上疊加圓點覆蓋物 271使用百度SDK在地圖上添加半透明橢圓 272使用百度SDK在地圖的指定位置添加標記 273使用百度SDK實現在地圖上添加圖像按鈕 274使用百度SDK在地圖的城市之間繪制虛線 275使用百度SDK實現在地圖上繪制多邊形 276使用百度SDK在地圖的三點位置繪制弧線 277使用百度SDK在地圖上添加生長型動畫 278使用百度SDK在地圖上添加降落型動畫 279使用百度SDK在地圖上添加淡入放大動畫 280使用百度SDK在地圖上添加水平展開動畫 281使用百度SDK在地圖上查詢省市行政中心 282使用百度SDK判斷某地是否在指定區域內 283使用百度SDK在地圖上自定義行政區顏色 284使用百度SDK查詢城市興趣點並顯示街景 285使用百度SDK查詢指定位置附近的興趣點 286使用百度SDK查詢在指定區域內的興趣點 287使用百度SDK根據起止地點規劃出行線路 288使用百度SDK在地圖中搜索指定公交線路 289使用百度SDK查詢百度地圖的公交線規劃 290使用百度SDK調用百度地圖的步行導航 291使用百度SDK調用百度地圖的騎行導航 292使用百度SDK調用百度地圖的Web導航 293使用百度SDK實現POI檢索並分享相關地址 294使用百度SDK實現將公交線路分享給好友 295使用百度SDK實現將騎行線路分享給好友 296使用百度SDK將當前地圖分享給QQ好友 297使用百度SDK實現在輸入框滑出建議列表 298使用百度SDK實現隱藏或顯示地圖比例尺 299使用百度SDK實現隱藏或顯示地圖縮放按鈕 300使用百度SDK實現自定義地圖縮放按鈕的位置
內容簡介
本書以“問題描述+解決方案”的模式,以Android 5.0為核心列舉了300個實用性極強的移動端應用開發技術實例,旨在幫助廣大讀者快速解決實際開發過程中面臨的諸多問題,從而不斷提高開發效率、拓展應用領域。全書根據實例功能將內容分為常用控件、通知欄、菜單、圖形和圖像、動畫、文件和數據、繫統和設備、Intent、第三方SDK開發等9章,以所見即所得、所學即所用的速成思維展示了個性化控件、定制通知欄、沉浸式狀態欄、折疊式工具欄、分享菜單、抽屜菜單、底部導航菜單、懸掛式窗口、雷達掃描圖、波紋擴散圖、點九圖、PorterDuff、ColorMatrix、內外陰影、圖像裁剪、矢量動畫、過渡動畫、轉場動畫、網格動畫、異步、圖形驗證碼、數據解析和傳遞、Intent、使用方向傳感器自制指南針、使用加速度傳感器實現微信的搖一搖功能、使用Camera捕捉前置和後置攝像頭畫面等精彩實例的實現過程和代碼,以及使用......