Android系統(tǒng)的創(chuàng)世之初以及Activity的生命周期
圖解Android事件分發(fā)機(jī)制(深入底層源碼)
Android TabLayout+ViewPager+Fragment
Android ListView與RecyclerView項(xiàng)目實(shí)戰(zhàn)
首個(gè)hybird商業(yè)項(xiàng)目踩坑總結(jié)
SystemServer啟動(dòng)過(guò)程(framework)
Android創(chuàng)建綁定服務(wù)的3種方法
Activity setContentView過(guò)程分析
Android中View的測(cè)量measure過(guò)程
Android事件傳遞流程-從ViewRootImpl到View
Android平臺(tái)開(kāi)源log工具-Logger
Android進(jìn)程優(yōu)先級(jí)和oom_adj
SystemServer啟動(dòng)過(guò)程(native)
Context世剖、Application和ActivityThread
AndroidManifest.xml中applicaiton屬性介紹
Android中ViewGroup的布局layout過(guò)程
LeakCanary和常見(jiàn)內(nèi)存泄漏場(chǎng)景
Activity launchMode和taskaffinity
Kotlin 知識(shí)梳理(13) – 運(yùn)行時(shí)的泛型
Dagger2 知識(shí)梳理(3) – 使用 dependencies 和 @SubComponent 完成依賴注入
Android 知識(shí)梳理目錄 – 好吧,這是一個(gè)很”干”的標(biāo)題
面試算法知識(shí)梳理(11) – 二叉樹(shù)算法第一部分
Glide 知識(shí)梳理(4) – 自定義animate
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(5) – 簡(jiǎn)單及進(jìn)階的輪詢操作
Kotlin 知識(shí)梳理(1) – Kotlin 基礎(chǔ)
插件化知識(shí)梳理(2) – Small 框架之如何引入公共庫(kù)插件
面試算法知識(shí)梳理(7) – 數(shù)組第四部分
Activity 知識(shí)梳理(2) – Activity 棧
Framework 源碼解析知識(shí)梳理(1) – 應(yīng)用程序與 AMS 的通信實(shí)現(xiàn)
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(11) – 檢測(cè)網(wǎng)絡(luò)狀態(tài)并自動(dòng)重試請(qǐng)求
插件化知識(shí)梳理(7) – 類的動(dòng)態(tài)加載入門(mén)
性能優(yōu)化技巧知識(shí)梳理(1) – 布局優(yōu)化
View 繪制體系知識(shí)梳理(2) – setContentView 源碼解析
Architecture Components 知識(shí)梳理(1) – Lifecycle 示例&原理
Material Design 控件知識(shí)梳理(9) – TextInputLayout
設(shè)計(jì)模式知識(shí)梳理(5) – 結(jié)構(gòu)型 – 外觀模式
RecyclerView 知識(shí)梳理(2) – Adapter
零散知識(shí)點(diǎn)總結(jié)(3) – Android 狀態(tài)欄知識(shí)點(diǎn)總結(jié)
性能優(yōu)化技巧知識(shí)梳理(3) – 如何排查列表卡頓問(wèn)題
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(14) – 在 token 過(guò)期時(shí),刷新過(guò)期 token 并重新發(fā)起請(qǐng)求
Android 數(shù)據(jù)存儲(chǔ)知識(shí)梳理(1) – SQLiteOpenHelper 源碼解析
Java&Android 基礎(chǔ)知識(shí)梳理(5) – 類加載&對(duì)象實(shí)例化
Loader 知識(shí)梳理(3) – 自定義Loader
圖片基礎(chǔ)知識(shí)梳理(1) – ImageView 的 ScaleType 屬性解析
插件化知識(shí)梳理(5) – Small 框架之如何不將插件打包到宿主中
插件化知識(shí)梳理(4) – Small 框架之如何實(shí)現(xiàn)插件更新
Android 異步任務(wù)知識(shí)梳理(3) – AsyncQueryHandler 源碼解析
Framework 源碼解析知識(shí)梳理(3) – 應(yīng)用進(jìn)程之間的通信實(shí)現(xiàn)
Canvas&Paint 知識(shí)梳理(2) – Canvas 的保存和恢復(fù)
Material Design 控件知識(shí)梳理(5) – DrawerLayout && NavigationView
Material Design 控件知識(shí)梳理(2) – AppBarLayout & CollapsingToolbarLayout
Kotlin 知識(shí)梳理(12) – 泛型類型參數(shù)
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(6) – 基于錯(cuò)誤類型的重試請(qǐng)求
Fragment 知識(shí)梳理(1) – Fragment 源碼解析
Service 知識(shí)梳理(1) – Service 問(wèn)題整理
Loader 知識(shí)梳理(1) – LoaderManager初探
Loader 知識(shí)梳理(2) – initLoader和restartLoader的區(qū)別
Architecture Components 知識(shí)梳理(3) – ViewModel 示例
OkHttp 知識(shí)梳理(4) – OkHttp 之緩存源碼解析
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(1) – 后臺(tái)執(zhí)行耗時(shí)操作,實(shí)時(shí)通知 UI 更新
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(15) – 實(shí)現(xiàn)一個(gè)簡(jiǎn)單的 MVP + RxJava + Retrofit 應(yīng)用
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(13) – 如何使得錯(cuò)誤發(fā)生時(shí)不自動(dòng)停止訂閱關(guān)系
Canvas&Paint 知識(shí)梳理(1) – Canvas 基礎(chǔ)
Kotlin 知識(shí)梳理(3) – 類钦听、對(duì)象和接口
零散知識(shí)點(diǎn)總結(jié)(2) – Ubuntu下切換JDK版本
Java&Android 基礎(chǔ)知識(shí)梳理(3) – 內(nèi)存區(qū)域
Dagger2 知識(shí)梳理(2) – @Qulifier 和 @Named 解決依賴注入迷失
Java&Android 基礎(chǔ)知識(shí)梳理(10) – SparseArray 源碼解析
多線程知識(shí)梳理(4) – synchronized 三部曲之等待/通知模型
Java&Android 基礎(chǔ)知識(shí)梳理(13) – 反射
Android 數(shù)據(jù)存儲(chǔ)知識(shí)梳理(2) – Android存儲(chǔ)目錄
RecyclerView 知識(shí)梳理(4) – ItemDecoration
Canvas&Paint 知識(shí)梳理(6) – 繪制路線 Path 基本用法
性能優(yōu)化工具知識(shí)梳理(3) – 調(diào)試GPU過(guò)度繪制 & GPU呈現(xiàn)模式分析
圖片基礎(chǔ)知識(shí)梳理(3) – Bitmap&BitmapFactory 解析
Activity 知識(shí)梳理(1) – Activity生命周期
Kotlin 知識(shí)梳理(11) – 內(nèi)聯(lián)函數(shù)
Java&Android 基礎(chǔ)知識(shí)梳理(8) – 容器類
View 繪制體系知識(shí)梳理(8) – obtainStyledAttributes 詳解
組件化知識(shí)梳理(3) – Arouter 源碼分析之運(yùn)行時(shí) SDK
Fragment 知識(shí)梳理(2) – Fragment 狀態(tài)保存和恢復(fù)
組件化知識(shí)梳理(2) – Arouter 源碼分析之 Complier SDK
我是如何準(zhǔn)備 Android 技術(shù)面試的~
Kotlin 知識(shí)梳理(6) – Kotlin 的可空性
動(dòng)畫(huà)體系知識(shí)梳理(2) – 轉(zhuǎn)場(chǎng)動(dòng)畫(huà) ContentTransition 實(shí)踐篇
面試算法知識(shí)梳理(6) – 數(shù)組第三部分
View 事件傳遞體系知識(shí)梳理(1) – 事件分發(fā)機(jī)制
插件化知識(shí)梳理(6) – Small 源碼分析之 Hook 原理
面試算法知識(shí)梳理(4) – 數(shù)組第一部分
設(shè)計(jì)模式知識(shí)梳理(2) – 結(jié)構(gòu)型 – 橋接模式
RxJava 知識(shí)梳理(1) – RxJava 基本思想
View 繪制體系知識(shí)梳理(3) – 繪制流程之 Measure 詳解
Fragment 知識(shí)梳理(4) – FragmentPagerAdapter 和 FragmentStatePagerAdapter 解析
OkHttp 知識(shí)梳理(2) – OkHttp 源碼解析之異步請(qǐng)求 & 線程調(diào)度
Kotlin 知識(shí)梳理(7) – Kotlin 的類型系統(tǒng)
插件化知識(shí)梳理(9) – 資源的動(dòng)態(tài)加載示例及源碼分析
NDK 知識(shí)梳理(2) – 使用 CMake 進(jìn)行 NDK 開(kāi)發(fā)之如何編寫(xiě) CMakeLists.txt 腳本
多線程知識(shí)梳理(6) – 線程池四部曲之 ThreadPoolExecutor
多線程知識(shí)梳理(5) – 線程池四部曲之 Executor 框架
Java&Android 基礎(chǔ)知識(shí)梳理(9) – LruCache 源碼解析
多線程知識(shí)梳理(7) – ConcurrentHashMap 實(shí)現(xiàn)原理
多線程知識(shí)梳理(2) – synchronized 三部曲之基本使用
性能優(yōu)化工具知識(shí)梳理(4) – Hierarchy Viewer
架構(gòu)設(shè)計(jì)知識(shí)梳理(2) – Flux
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(3) – 優(yōu)化搜索聯(lián)想功能
設(shè)計(jì)模式知識(shí)梳理(6) – 結(jié)構(gòu)型 – 享元模式
Java&Android 基礎(chǔ)知識(shí)梳理(12) – 泛型
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(4) – 結(jié)合 Retrofit 請(qǐng)求新聞資訊
性能優(yōu)化技巧知識(shí)梳理(2) – 內(nèi)存優(yōu)化
NDK 知識(shí)梳理(1) – 使用 CMake 進(jìn)行 NDK 開(kāi)發(fā)之初體驗(yàn)
Activity 知識(shí)梳理(3) – Activity狀態(tài)保存和恢復(fù)
OkHttp 知識(shí)梳理(3) – OkHttp 之緩存基礎(chǔ)
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(9) – 使用 timer/interval/delay 實(shí)現(xiàn)任務(wù)調(diào)度
View 繪制體系知識(shí)梳理(4) – 繪制過(guò)程之 Layout 詳解
插件化知識(shí)梳理(8) – 類的動(dòng)態(tài)加載源碼分析
Material Design 控件知識(shí)梳理(6) – Snackbar
Canvas&Paint 知識(shí)梳理(5) – Paint#setShader
Canvas&Paint 知識(shí)梳理(3) – 顏色合成 Paint#setColorFilter
Java&Android 基礎(chǔ)知識(shí)梳理(7) – Android 虛擬機(jī)
Kotlin 知識(shí)梳理(4) – 數(shù)據(jù)類谎倔、類委托 及 object 關(guān)鍵字
View 事件傳遞體系知識(shí)梳理(2) – 嵌套滑動(dòng)
Material Design 控件知識(shí)梳理(8) – TabLayout
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(2) – 計(jì)算一段時(shí)間內(nèi)數(shù)據(jù)的平均值
Retrofit 知識(shí)梳理(2) – Retrofit 動(dòng)態(tài)代理內(nèi)部實(shí)現(xiàn)
Framework 源碼解析知識(shí)梳理(7) – Handler 的 async 標(biāo)志位
組件化知識(shí)梳理(1) – Arouter 的基本使用
Material Design 控件知識(shí)梳理(4) – FloatingActionButton
Glide 知識(shí)梳理(6) – Glide 源碼解析之流程剖析
圖片基礎(chǔ)知識(shí)梳理(2) – Bitmap 占用內(nèi)存分析
View 繪制體系知識(shí)梳理(6) – 繪制過(guò)程之 requestLayout 和 invalidate 詳解
設(shè)計(jì)模式知識(shí)梳理(7) – 結(jié)構(gòu)型 – 代理模式
View 繪制體系知識(shí)梳理(5) – 繪制過(guò)程之 Draw 詳解
架構(gòu)設(shè)計(jì)知識(shí)梳理(1) – Dagger2
Broadcast 知識(shí)梳理(1) – BroadcastReceiver 基本概念
動(dòng)畫(huà)體系知識(shí)梳理(1) – 轉(zhuǎn)場(chǎng)動(dòng)畫(huà) ContentTransition 理論篇
Kotlin 知識(shí)梳理(5) – lambda 表達(dá)式和成員引用
Android 異步任務(wù)知識(shí)梳理(1) – AsyncTask 源碼解析
Dagger2 知識(shí)梳理(1) – Dagger2 依賴注入的兩種方式
性能優(yōu)化工具知識(shí)梳理(8) – Lint
Kotlin 知識(shí)梳理(10) – 高階函數(shù):Lambda 作為形參或返回值
Java&Android 基礎(chǔ)知識(shí)梳理(2) – 序列化
Weex 知識(shí)梳理(1) – 環(huán)境搭建
Kotlin 知識(shí)梳理(8) – 運(yùn)算符重載及其他約定
View 繪制體系知識(shí)梳理(1) – LayoutInflater#inflate 源碼解析
插件化知識(shí)梳理(10) – Service 插件化實(shí)現(xiàn)及原理
零散知識(shí)點(diǎn)總結(jié)(1) – Gradle 使用配置總結(jié)
Canvas&Paint 知識(shí)梳理(4) – 圖像合成 Paint#setXfermode
面試算法知識(shí)梳理(12) – 二叉樹(shù)算法第二部分
性能優(yōu)化工具知識(shí)梳理(2) – Systrace
圖片壓縮知識(shí)梳理(0) – 圖片壓縮學(xué)習(xí)計(jì)劃
Java&Android 基礎(chǔ)知識(shí)梳理(4) – 垃圾收集器與內(nèi)存分配策略
Java&Android 基礎(chǔ)知識(shí)梳理(0) – Java 基礎(chǔ)知識(shí)大綱
Android 異步任務(wù)知識(shí)梳理(2) – HandlerThread 源碼解析
性能優(yōu)化工具知識(shí)梳理(7) – LeakCanary
性能優(yōu)化工具知識(shí)梳理(1) – TraceView
面試算法知識(shí)梳理(13) – 二叉樹(shù)算法第三部分
多線程知識(shí)梳理(8) – volatile 關(guān)鍵字
RxJava 知識(shí)梳理(3) – RxJava2 基礎(chǔ)知識(shí)小結(jié)
Java&Android 基礎(chǔ)知識(shí)梳理(6) – 字節(jié)輸入輸出流
Android 數(shù)據(jù)存儲(chǔ)知識(shí)梳理(4) – 數(shù)據(jù)庫(kù)升級(jí)操作的處理策略
Fragment 知識(shí)梳理(3) – FragmentPagerAdapter 和 FragmentStatePagerAdapter 的數(shù)據(jù)更新問(wèn)題
Material Design 控件知識(shí)梳理(1) – Android Design Support Library 是什么
圖片壓縮知識(shí)梳理(5) – VectorDrawable 簡(jiǎn)介
Android 數(shù)據(jù)存儲(chǔ)知識(shí)梳理(3) – SharedPreference 源碼解析
圖片壓縮知識(shí)梳理(6) – VectorDrawable 及 AnimatedVectorDrawable 使用詳解
設(shè)計(jì)模式知識(shí)梳理(3) – 結(jié)構(gòu)型 – 組合模式
Java&Android 基礎(chǔ)知識(shí)梳理(11) – 淺拷貝 Vs 深拷貝
Dagger2 知識(shí)梳理(4) – @Scope 注解的使用
RxJava 知識(shí)梳理(2) – RxJava2 操作符實(shí)戰(zhàn)
Glide 知識(shí)梳理(3) – 自定義transform
面試算法知識(shí)梳理(10) – 二叉查找樹(shù)
面試算法知識(shí)梳理(5) – 數(shù)組第二部分
Material Design 控件知識(shí)梳理(3) – BottomSheet && BottomSheetDialog && BottomSheetDialogFragment
性能優(yōu)化工具知識(shí)梳理(6) – Memory Monitor & Heap Viewer & Allocation Tracker
不“誤”正業(yè)地弄了個(gè)人博客,歡迎訪問(wèn)
Framework 源碼解析知識(shí)梳理(4) – 從源碼角度談?wù)?Handler 的應(yīng)用
Java&Android 基礎(chǔ)知識(shí)梳理(1) – 注解
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(7) – 基于 combineLatest 實(shí)現(xiàn)的輸入表單驗(yàn)證
Material Design 控件知識(shí)梳理(7) – BottomNavigationBar
Kotlin 知識(shí)梳理(2) – 函數(shù)的定義與調(diào)用
OkHttp 知識(shí)梳理(1) – OkHttp 源碼解析之入門(mén)
RecyclerView 知識(shí)梳理(1) – 綜述
插件化知識(shí)梳理(3) – Small 框架之宿主分身
RxJava2 實(shí)戰(zhàn)知識(shí)梳理(10) – 屏幕旋轉(zhuǎn)導(dǎo)致 Activity 重建時(shí)恢復(fù)任務(wù)
RecyclerView 知識(shí)梳理(3) – LayoutManager
Glide 知識(shí)梳理(5) – 自定義GlideModule
多線程知識(shí)梳理(3) – synchronized 三部曲之鎖優(yōu)化
Architecture Components 知識(shí)梳理(2) – LiveData 示例
Glide 知識(shí)梳理(2) – 自定義Target
Framework 源碼解析知識(shí)梳理(2) – 應(yīng)用進(jìn)程與 WMS 的通信實(shí)現(xiàn)
View 繪制體系知識(shí)梳理(7) – getMeasuredWidth 和 getWidth 的區(qū)別
多線程知識(shí)梳理(1) – 并發(fā)編程的藝術(shù)筆記
設(shè)計(jì)模式知識(shí)梳理(4) – 結(jié)構(gòu)型 – 裝飾模式
RecyclerView 知識(shí)梳理(5) – ItemTouchHelper
組件化知識(shí)梳理(4) – IOC & AOP 思想在 Arouter 中的應(yīng)用
插件化知識(shí)梳理(1) – Small 框架之如何引入應(yīng)用插件
設(shè)計(jì)模式知識(shí)梳理(1) – 結(jié)構(gòu)型 – 適配器模式
奇技淫巧之-Android監(jiān)聽(tīng)鍵盤(pán)彈出與隱藏事件
RxImagePicker:從零實(shí)現(xiàn)靈活且可高度定制的Android圖片選擇架構(gòu)
Android6.0權(quán)限適配及兼容庫(kù)的實(shí)現(xiàn)
【Android】快速開(kāi)發(fā)偷懶必備(二) 支持DataBinding啦~爽炸橄杨,一行實(shí)現(xiàn)花式列表
Android自定義ClockView實(shí)現(xiàn)時(shí)鐘效果
Android 實(shí)現(xiàn)無(wú)網(wǎng)絡(luò)頁(yè)面切換
開(kāi)發(fā)工具總結(jié)(8)之圖文并茂全面總結(jié)上百個(gè)AS好用的插件(下)
聽(tīng)說(shuō)你Binder機(jī)制學(xué)的不錯(cuò),來(lái)面試下這幾個(gè)問(wèn)題(二)
Android——MVP——封裝一個(gè)通用的Module
Android應(yīng)用坐標(biāo)系統(tǒng)全面詳解
Linux環(huán)境下Android開(kāi)發(fā)常用命令
Android 拍照獲取縮略圖以及完整圖片(適配androidN)
[譯]使用MVI打造響應(yīng)式APP(一):Model到底是什么
Android實(shí)現(xiàn)沉浸模式的體驗(yàn)
一個(gè)根據(jù)代碼自動(dòng)生成UML的插件照卦,助你看源碼事半功倍
OkHttp基礎(chǔ)學(xué)習(xí)(五)式矫,文件上傳
躺著過(guò)坑—斷電導(dǎo)致AVD和SDK Manager無(wú)法正常啟動(dòng)
Android 一起來(lái)看看 ThreadLocal
萬(wàn)能的dialog庫(kù)(包括類似popwindow效果)
Android 自定義View學(xué)習(xí)(十四)——View滑動(dòng)學(xué)習(xí)
手把手教你從零開(kāi)始做一個(gè)好看的 APP – Day four
Android——RecyclerView入門(mén)學(xué)習(xí)之DiffUtil(四)
一次使用Kotlin實(shí)現(xiàn)酷炫多選操作的嘗試
Android 帶你擼一個(gè)好玩的 DoodleView(涂鴉)
十分鐘了解Android觸摸事件原理(InputManagerService)
Android 自定義view,畫(huà)圖板練習(xí)
Android 打造一個(gè)絲滑的自動(dòng)輪播控件
Android Camera 系列(三)Camera API 詳解
設(shè)計(jì)模式(一) 工廠模式 五種寫(xiě)法總結(jié)
為你的Android Studio打造帥氣的LogCat配色
Android 自定義View學(xué)習(xí)(十三)——View觸控事件學(xué)習(xí)
Android DEPPLINK役耕、APPLink原理簡(jiǎn)析
不要打破鏈?zhǔn)秸{(diào)用采转!一個(gè)極低成本的RxJava全局Error處理方案
Flutter基礎(chǔ)篇(7)– Flutter更新錯(cuò)誤全面解決方案(圖文+視頻講解)
Android 讀取聯(lián)系人數(shù)據(jù)庫(kù)
簡(jiǎn)單圖片加載框架的打造-(了解如何設(shè)計(jì)一個(gè)圖片加載框架)
Android官方架構(gòu)組件DataBinding雙向綁定篇: 觀察者模式的殊途同歸
Http基礎(chǔ)知識(shí)學(xué)習(xí)(一)
[譯]Android開(kāi)發(fā)從Dagger2遷移至Kodein的感受
Material Design學(xué)習(xí):DrawerLayout+NavigationView
Android窗口管理分析(1):View如何繪制到屏幕上的主觀理解
Android動(dòng)手實(shí)現(xiàn)一個(gè)側(cè)滑刪除控件,支持Recyclerview
OkHttp基礎(chǔ)學(xué)習(xí)(一)瞬痘,Get請(qǐng)求
完全自定義控件-簡(jiǎn)單環(huán)形進(jìn)度條制作
手把手教你從零開(kāi)始做一個(gè)好看的 APP – Day five
Flutter基礎(chǔ)篇(1)– 跨平臺(tái)開(kāi)發(fā)框架和工具集錦
Android——RecyclerView入門(mén)學(xué)習(xí)之ItemDecoration(一)
Android硬件加速(二)-RenderThread與OpenGL GPU渲染
Flutter進(jìn)階篇(5)– 使用Flutter創(chuàng)建插件詳解并發(fā)布到Pub庫(kù)
Java多邊型無(wú)序點(diǎn)排序(地圖繪制多邊形)
仿淘寶故慈、京東拖拽商品詳情(可嵌套ViewPager虚青、ListView周崭、WebView、FragmentTabhost)
Swift 與 Kotlin 的簡(jiǎn)單對(duì)比术辐,簡(jiǎn)直是太像了
RxJava——基礎(chǔ)學(xué)習(xí)(六)津辩,過(guò)濾操作符
Android官方架構(gòu)組件Paging-Ex:為分頁(yè)列表添加Header和Footer
Android 開(kāi)發(fā)中零散知識(shí)點(diǎn)記錄
Android 一起來(lái)看看面試必問(wèn)的消息機(jī)制
[譯]Java將Powermock和Mockito搭配進(jìn)行單元測(cè)試
Android內(nèi)容服務(wù)ContentService原理淺析
Android Bitmap變遷與原理解析(4.x-8.x)
Material Design學(xué)習(xí):CoordinatorLayout+AppBarLayout+CollapsingToolbarLayout
告別Dagger2模板代碼:DaggerAndroid原理解析
教你打造Android揭面水波動(dòng)畫(huà)庫(kù)-AnimationHelper
Android——CoordinatorLayout之Behavior入門(mén)學(xué)習(xí)(下)
Android狀態(tài)模式的幾種應(yīng)用場(chǎng)景
簡(jiǎn)單幾行代碼讓ViewPager實(shí)現(xiàn)垂直滑動(dòng)效果
Android 一起來(lái)看看 HttpURLConnection 和 HttpClient 的區(qū)別
Android自定義View:MeasureSpec的真正意義與View大小控制
Android中g(shù)radle的implementation和api指令的區(qū)別
Android meta-data知識(shí)介紹及應(yīng)用
從幾行代碼學(xué)習(xí)Java類加載機(jī)制-從懵逼到放棄
Android面試:主線程中的Looper.loop()一直無(wú)限循環(huán)為什么不會(huì)造成ANR拆撼?
Android中的內(nèi)存泄漏和內(nèi)存溢出.md
全面總結(jié)側(cè)滑菜單的5種實(shí)現(xiàn)方式
JNI源碼分析 (并實(shí)現(xiàn)JNI動(dòng)態(tài)注冊(cè))
Material Design學(xué)習(xí):ToolBar 開(kāi)發(fā)使用簡(jiǎn)介
Android 擼起袖子,自己封裝 DialogFragment
一行Java代碼實(shí)現(xiàn)RecyclerView的Adapter?一行都不需要闸度!
程序員漫畫(huà)系列-Linux內(nèi)核里面的那些小企鵝們
Android 動(dòng)畫(huà)基礎(chǔ)知識(shí)學(xué)習(xí)(上)
手把手教你從零開(kāi)始做一個(gè)好看的 APP – Day one
設(shè)計(jì)模式(二) 三種適配器模式 總結(jié)和使用場(chǎng)景
程序員在簡(jiǎn)書(shū)|一個(gè)小城市竭贩,小公司的小程序員
Android 神兵利器Dagger2使用詳解(三)MVP架構(gòu)下的使用
2017年你絕對(duì)想嘗試的25個(gè)新安卓庫(kù)(持續(xù)更新中…)
小知識(shí)-Android一個(gè)應(yīng)用多個(gè)圖標(biāo)的幾種實(shí)現(xiàn)方式
Android 自定義View學(xué)習(xí)(二)——開(kāi)始了解Canvas和Paint
Java編程思想第21章并發(fā)讀書(shū)筆記(下)
常用Java并發(fā)數(shù)據(jù)結(jié)構(gòu)
Flutter進(jìn)階篇(4)– Flutter的Future異步詳解
教你如何最快寫(xiě)出酷炫的dialog對(duì)話框
開(kāi)發(fā)工具總結(jié)(5)之Markdown語(yǔ)法圖文全面詳解及其工具介紹
AndroidStudio基本debug調(diào)試技巧縱覽
動(dòng)態(tài)圖解&實(shí)例 ConstraintLayout Chain
Android 一起來(lái)看看 7.0 的新特性 FileProvider
Android8.0適配前臺(tái)定位服務(wù)service
Android 實(shí)習(xí) | 如何在春招中拿到滿意的 offer
OkHttp基礎(chǔ)學(xué)習(xí)(四)莺禁,無(wú)網(wǎng)絡(luò)讀取本地緩存留量,有錯(cuò)誤,待改正
Android 滑動(dòng)選擇身高體重控件——RulerView
10分鐘學(xué)會(huì)ikvStockChart制作K線圖(股票走勢(shì)圖)
Android —— 微信Sqlite數(shù)據(jù)庫(kù)框架WCDB學(xué)習(xí)
Android 自定義View學(xué)習(xí)(一)——準(zhǔn)備
WebView深度學(xué)習(xí)(一)之WebView的基本使用以及Android和js的交互
一個(gè)工程帶你學(xué)會(huì)簡(jiǎn)單使用RxJava+Retrofit
【Android】你可能不知道的Support(一) 0步自動(dòng)定向刷新SortedList
【Android】ListView睁宰、RecyclerView肪获、ScrollView里嵌套ListView 相對(duì)優(yōu)雅的解決方案:NestFullListView
優(yōu)化Android Studio/Gradle構(gòu)建