Android - 收藏集

Android 自定義View的各種姿勢1

Activity的顯示之ViewRootImpl詳解

Activity的顯示之ViewRootImpl初探

Activity的顯示之Window和View

Android系統(tǒng)的創(chuàng)世之初以及Activity的生命周期

圖解Android事件分發(fā)機制(深入底層源碼)

Android 自定義View的各種姿勢2

Android 內(nèi)存泄漏分析與解決

Android消息機制

Android Binder(也許是最容易理解的)

Android 徹底掌握Binder

Android序列化

Android Fragment詳解

Android Fragment最佳實踐

Android TabLayout+ViewPager+Fragment

Android ListView

Android RecyclerView

Android ListView與RecyclerView項目實戰(zhàn)

Android 動畫

Android 動畫(續(xù))

Android HTTP

首個hybird商業(yè)項目踩坑總結(jié)

Android并發(fā)編程 開篇

Android并發(fā)編程 多線程與鎖

Android并發(fā)編程 原子類與并發(fā)容器

SystemServer啟動過程(framework)

ListView復(fù)用View原理分析

Android創(chuàng)建綁定服務(wù)的3種方法

管理應(yīng)用內(nèi)存

DecorView顯示過程

Activity setContentView過程分析

VelocityTracker用法

Android中View的測量measure過程

Android WatchDog原理分析

Android事件傳遞流程-從ViewRootImpl到View

ViewManager接口分析

Android平臺開源log工具-Logger

Android進程優(yōu)先級和oom_adj

使用gradle減少apk大小

Zyote啟動之framework

常見的apk簽名方式

Volley源碼分析

SystemServer啟動過程(native)

Context、Application和ActivityThread

AndroidManifest.xml中applicaiton屬性介紹

Android播放器音樂信息亂碼及其解決方法

Zygote啟動之native

管理 Activity 生命周期

Android中ViewGroup的布局layout過程

GestureDetector用法

LeakCanary和常見內(nèi)存泄漏場景

apk反編譯與二次打包

Android性能分析工具Systrace

Android常見技巧

Activity launchMode和taskaffinity

Kotlin 知識梳理(13) – 運行時的泛型

Dagger2 知識梳理(3) – 使用 dependencies 和 @SubComponent 完成依賴注入

Android 知識梳理目錄 – 好吧,這是一個很”干”的標(biāo)題

面試算法知識梳理(11) – 二叉樹算法第一部分

Glide 知識梳理(4) – 自定義animate

RxJava2 實戰(zhàn)知識梳理(5) – 簡單及進階的輪詢操作

性能優(yōu)化工具知識梳理(5) – MAT

Kotlin 知識梳理(1) – Kotlin 基礎(chǔ)

插件化知識梳理(2) – Small 框架之如何引入公共庫插件

面試算法知識梳理(7) – 數(shù)組第四部分

圖片壓縮知識梳理(8) – WebP 使用詳解

Activity 知識梳理(2) – Activity 棧

Framework 源碼解析知識梳理(1) – 應(yīng)用程序與 AMS 的通信實現(xiàn)

RxJava2 實戰(zhàn)知識梳理(11) – 檢測網(wǎng)絡(luò)狀態(tài)并自動重試請求

插件化知識梳理(7) – 類的動態(tài)加載入門

性能優(yōu)化技巧知識梳理(1) – 布局優(yōu)化

View 繪制體系知識梳理(2) – setContentView 源碼解析

Architecture Components 知識梳理(1) – Lifecycle 示例&原理

Material Design 控件知識梳理(9) – TextInputLayout

設(shè)計模式知識梳理(5) – 結(jié)構(gòu)型 – 外觀模式

RecyclerView 知識梳理(2) – Adapter

零散知識點總結(jié)(3) – Android 狀態(tài)欄知識點總結(jié)

性能優(yōu)化技巧知識梳理(3) – 如何排查列表卡頓問題

RxJava2 實戰(zhàn)知識梳理(14) – 在 token 過期時,刷新過期 token 并重新發(fā)起請求

多線程知識梳理(9) – ThreadLocal

面試算法知識梳理(8) – 二分查找算法及其變型

Android 數(shù)據(jù)存儲知識梳理(1) – SQLiteOpenHelper 源碼解析

Java&Android 基礎(chǔ)知識梳理(5) – 類加載&對象實例化

Loader 知識梳理(3) – 自定義Loader

圖片基礎(chǔ)知識梳理(1) – ImageView 的 ScaleType 屬性解析

插件化知識梳理(5) – Small 框架之如何不將插件打包到宿主中

RxJava2 實戰(zhàn)知識梳理(8) – 使用 publish + merge 優(yōu)化先加載緩存,再讀取網(wǎng)絡(luò)數(shù)據(jù)的請求過程

插件化知識梳理(4) – Small 框架之如何實現(xiàn)插件更新

Android 異步任務(wù)知識梳理(3) – AsyncQueryHandler 源碼解析

Framework 源碼解析知識梳理(3) – 應(yīng)用進程之間的通信實現(xiàn)

Canvas&Paint 知識梳理(2) – Canvas 的保存和恢復(fù)

面試算法知識梳理(9) – 鏈表算法第一部分

Material Design 控件知識梳理(5) – DrawerLayout && NavigationView

Material Design 控件知識梳理(2) – AppBarLayout & CollapsingToolbarLayout

Kotlin 知識梳理(12) – 泛型類型參數(shù)

RxJava2 實戰(zhàn)知識梳理(6) – 基于錯誤類型的重試請求

Fragment 知識梳理(1) – Fragment 源碼解析

Service 知識梳理(1) – Service 問題整理

Loader 知識梳理(1) – LoaderManager初探

Loader 知識梳理(2) – initLoader和restartLoader的區(qū)別

Architecture Components 知識梳理(3) – ViewModel 示例

OkHttp 知識梳理(4) – OkHttp 之緩存源碼解析

RxJava2 實戰(zhàn)知識梳理(1) – 后臺執(zhí)行耗時操作,實時通知 UI 更新

RxJava2 實戰(zhàn)知識梳理(15) – 實現(xiàn)一個簡單的 MVP + RxJava + Retrofit 應(yīng)用

RxJava2 實戰(zhàn)知識梳理(13) – 如何使得錯誤發(fā)生時不自動停止訂閱關(guān)系

Canvas&Paint 知識梳理(1) – Canvas 基礎(chǔ)

Kotlin 知識梳理(3) – 類、對象和接口

零散知識點總結(jié)(2) – Ubuntu下切換JDK版本

Java&Android 基礎(chǔ)知識梳理(3) – 內(nèi)存區(qū)域

Dagger2 知識梳理(2) – @Qulifier 和 @Named 解決依賴注入迷失

Java&Android 基礎(chǔ)知識梳理(10) – SparseArray 源碼解析

多線程知識梳理(4) – synchronized 三部曲之等待/通知模型

Java&Android 基礎(chǔ)知識梳理(13) – 反射

Android 數(shù)據(jù)存儲知識梳理(2) – Android存儲目錄

RecyclerView 知識梳理(4) – ItemDecoration

Canvas&Paint 知識梳理(6) – 繪制路線 Path 基本用法

性能優(yōu)化工具知識梳理(3) – 調(diào)試GPU過度繪制 & GPU呈現(xiàn)模式分析

圖片基礎(chǔ)知識梳理(3) – Bitmap&BitmapFactory 解析

Activity 知識梳理(1) – Activity生命周期

Kotlin 知識梳理(11) – 內(nèi)聯(lián)函數(shù)

Java&Android 基礎(chǔ)知識梳理(8) – 容器類

View 繪制體系知識梳理(8) – obtainStyledAttributes 詳解

組件化知識梳理(3) – Arouter 源碼分析之運行時 SDK

Fragment 知識梳理(2) – Fragment 狀態(tài)保存和恢復(fù)

組件化知識梳理(2) – Arouter 源碼分析之 Complier SDK

我是如何準(zhǔn)備 Android 技術(shù)面試的~

Kotlin 知識梳理(6) – Kotlin 的可空性

Glide 知識梳理(1) – 基本用法

動畫體系知識梳理(2) – 轉(zhuǎn)場動畫 ContentTransition 實踐篇

Android 知識梳理目錄 – To do

面試算法知識梳理(6) – 數(shù)組第三部分

View 事件傳遞體系知識梳理(1) – 事件分發(fā)機制

圖片壓縮知識梳理(9) – 選擇合適的圖片格式

面試算法知識梳理(3) – 字符串算法第二部分

面試算法知識梳理(2) – 字符串算法第一部分

插件化知識梳理(6) – Small 源碼分析之 Hook 原理

面試算法知識梳理(4) – 數(shù)組第一部分

設(shè)計模式知識梳理(2) – 結(jié)構(gòu)型 – 橋接模式

RxJava 知識梳理(1) – RxJava 基本思想

面試算法知識梳理(1) – 排序算法

View 繪制體系知識梳理(3) – 繪制流程之 Measure 詳解

Fragment 知識梳理(4) – FragmentPagerAdapter 和 FragmentStatePagerAdapter 解析

OkHttp 知識梳理(2) – OkHttp 源碼解析之異步請求 & 線程調(diào)度

Kotlin 知識梳理(7) – Kotlin 的類型系統(tǒng)

插件化知識梳理(9) – 資源的動態(tài)加載示例及源碼分析

Kotlin 知識梳理(9) – 委托屬性

Android 面試文檔分享

NDK 知識梳理(2) – 使用 CMake 進行 NDK 開發(fā)之如何編寫 CMakeLists.txt 腳本

多線程知識梳理(6) – 線程池四部曲之 ThreadPoolExecutor

多線程知識梳理(5) – 線程池四部曲之 Executor 框架

Java&Android 基礎(chǔ)知識梳理(9) – LruCache 源碼解析

多線程知識梳理(7) – ConcurrentHashMap 實現(xiàn)原理

多線程知識梳理(2) – synchronized 三部曲之基本使用

性能優(yōu)化工具知識梳理(4) – Hierarchy Viewer

架構(gòu)設(shè)計知識梳理(2) – Flux

RxJava2 實戰(zhàn)知識梳理(3) – 優(yōu)化搜索聯(lián)想功能

設(shè)計模式知識梳理(6) – 結(jié)構(gòu)型 – 享元模式

Java&Android 基礎(chǔ)知識梳理(12) – 泛型

RxJava2 實戰(zhàn)知識梳理(4) – 結(jié)合 Retrofit 請求新聞資訊

Android 版本適配問題

性能優(yōu)化技巧知識梳理(2) – 內(nèi)存優(yōu)化

Retrofit 知識梳理(1) – 流程分析

Volley 知識梳理 – Volley解析

NDK 知識梳理(1) – 使用 CMake 進行 NDK 開發(fā)之初體驗

Activity 知識梳理(3) – Activity狀態(tài)保存和恢復(fù)

多線程知識梳理(10) – 死鎖的概念

OkHttp 知識梳理(3) – OkHttp 之緩存基礎(chǔ)

RxJava2 實戰(zhàn)知識梳理(9) – 使用 timer/interval/delay 實現(xiàn)任務(wù)調(diào)度

View 繪制體系知識梳理(4) – 繪制過程之 Layout 詳解

插件化知識梳理(8) – 類的動態(tài)加載源碼分析

Material Design 控件知識梳理(6) – Snackbar

Canvas&Paint 知識梳理(5) – Paint#setShader

Canvas&Paint 知識梳理(3) – 顏色合成 Paint#setColorFilter

Java&Android 基礎(chǔ)知識梳理(7) – Android 虛擬機

Kotlin 知識梳理(4) – 數(shù)據(jù)類、類委托 及 object 關(guān)鍵字

View 事件傳遞體系知識梳理(2) – 嵌套滑動

Material Design 控件知識梳理(8) – TabLayout

RxJava2 實戰(zhàn)知識梳理(2) – 計算一段時間內(nèi)數(shù)據(jù)的平均值

Retrofit 知識梳理(2) – Retrofit 動態(tài)代理內(nèi)部實現(xiàn)

Framework 源碼解析知識梳理(7) – Handler 的 async 標(biāo)志位

組件化知識梳理(1) – Arouter 的基本使用

圖片壓縮知識梳理(1) – PNG 原理

Material Design 控件知識梳理(4) – FloatingActionButton

Glide 知識梳理(6) – Glide 源碼解析之流程剖析

RxJava2 實戰(zhàn)知識梳理(12) – 實戰(zhàn)講解 publish & replay & share & refCount & autoConnect

圖片基礎(chǔ)知識梳理(2) – Bitmap 占用內(nèi)存分析

View 繪制體系知識梳理(6) – 繪制過程之 requestLayout 和 invalidate 詳解

面試算法知識梳理(14) – 數(shù)字算法

設(shè)計模式知識梳理(7) – 結(jié)構(gòu)型 – 代理模式

View 繪制體系知識梳理(5) – 繪制過程之 Draw 詳解

架構(gòu)設(shè)計知識梳理(1) – Dagger2

Broadcast 知識梳理(1) – BroadcastReceiver 基本概念

動畫體系知識梳理(1) – 轉(zhuǎn)場動畫 ContentTransition 理論篇

Kotlin 知識梳理(5) – lambda 表達式和成員引用

Android 異步任務(wù)知識梳理(1) – AsyncTask 源碼解析

Dagger2 知識梳理(1) – Dagger2 依賴注入的兩種方式

性能優(yōu)化工具知識梳理(8) – Lint

Kotlin 知識梳理(10) – 高階函數(shù):Lambda 作為形參或返回值

Java&Android 基礎(chǔ)知識梳理(2) – 序列化

Weex 知識梳理(1) – 環(huán)境搭建

Kotlin 知識梳理(8) – 運算符重載及其他約定

View 繪制體系知識梳理(1) – LayoutInflater#inflate 源碼解析

插件化知識梳理(10) – Service 插件化實現(xiàn)及原理

零散知識點總結(jié)(1) – Gradle 使用配置總結(jié)

Canvas&Paint 知識梳理(4) – 圖像合成 Paint#setXfermode

面試算法知識梳理(12) – 二叉樹算法第二部分

性能優(yōu)化工具知識梳理(2) – Systrace

圖片壓縮知識梳理(0) – 圖片壓縮學(xué)習(xí)計劃

Java&Android 基礎(chǔ)知識梳理(4) – 垃圾收集器與內(nèi)存分配策略

Java&Android 基礎(chǔ)知識梳理(0) – Java 基礎(chǔ)知識大綱

Android 異步任務(wù)知識梳理(2) – HandlerThread 源碼解析

性能優(yōu)化工具知識梳理(7) – LeakCanary

性能優(yōu)化工具知識梳理(1) – TraceView

面試算法知識梳理(13) – 二叉樹算法第三部分

多線程知識梳理(8) – volatile 關(guān)鍵字

RxJava 知識梳理(3) – RxJava2 基礎(chǔ)知識小結(jié)

Java&Android 基礎(chǔ)知識梳理(6) – 字節(jié)輸入輸出流

Android 數(shù)據(jù)存儲知識梳理(4) – 數(shù)據(jù)庫升級操作的處理策略

Fragment 知識梳理(3) – FragmentPagerAdapter 和 FragmentStatePagerAdapter 的數(shù)據(jù)更新問題

Material Design 控件知識梳理(1) – Android Design Support Library 是什么

圖片壓縮知識梳理(5) – VectorDrawable 簡介

圖片壓縮知識梳理(2) – 減小 PNG 大小

Android 數(shù)據(jù)存儲知識梳理(3) – SharedPreference 源碼解析

圖片壓縮知識梳理(6) – VectorDrawable 及 AnimatedVectorDrawable 使用詳解

設(shè)計模式知識梳理(3) – 結(jié)構(gòu)型 – 組合模式

Java&Android 基礎(chǔ)知識梳理(11) – 淺拷貝 Vs 深拷貝

Dagger2 知識梳理(4) – @Scope 注解的使用

RxJava 知識梳理(2) – RxJava2 操作符實戰(zhàn)

Glide 知識梳理(3) – 自定義transform

面試算法知識梳理(10) – 二叉查找樹

面試算法知識梳理(5) – 數(shù)組第二部分

Material Design 控件知識梳理(3) – BottomSheet && BottomSheetDialog && BottomSheetDialogFragment

性能優(yōu)化工具知識梳理(6) – Memory Monitor & Heap Viewer & Allocation Tracker

不“誤”正業(yè)地弄了個人博客,歡迎訪問

Framework 源碼解析知識梳理(4) – 從源碼角度談?wù)?Handler 的應(yīng)用

Java&Android 基礎(chǔ)知識梳理(1) – 注解

RxJava2 實戰(zhàn)知識梳理(7) – 基于 combineLatest 實現(xiàn)的輸入表單驗證

Material Design 控件知識梳理(7) – BottomNavigationBar

Kotlin 知識梳理(2) – 函數(shù)的定義與調(diào)用

OkHttp 知識梳理(1) – OkHttp 源碼解析之入門

RecyclerView 知識梳理(1) – 綜述

插件化知識梳理(3) – Small 框架之宿主分身

RxJava2 實戰(zhàn)知識梳理(10) – 屏幕旋轉(zhuǎn)導(dǎo)致 Activity 重建時恢復(fù)任務(wù)

RecyclerView 知識梳理(3) – LayoutManager

Glide 知識梳理(5) – 自定義GlideModule

多線程知識梳理(3) – synchronized 三部曲之鎖優(yōu)化

Architecture Components 知識梳理(2) – LiveData 示例

Glide 知識梳理(2) – 自定義Target

Framework 源碼解析知識梳理(2) – 應(yīng)用進程與 WMS 的通信實現(xiàn)

View 繪制體系知識梳理(7) – getMeasuredWidth 和 getWidth 的區(qū)別

多線程知識梳理(1) – 并發(fā)編程的藝術(shù)筆記

設(shè)計模式知識梳理(4) – 結(jié)構(gòu)型 – 裝飾模式

RecyclerView 知識梳理(5) – ItemTouchHelper

組件化知識梳理(4) – IOC & AOP 思想在 Arouter 中的應(yīng)用

插件化知識梳理(1) – Small 框架之如何引入應(yīng)用插件

設(shè)計模式知識梳理(1) – 結(jié)構(gòu)型 – 適配器模式

奇技淫巧之-Android監(jiān)聽鍵盤彈出與隱藏事件

RxImagePicker:從零實現(xiàn)靈活且可高度定制的Android圖片選擇架構(gòu)

Android6.0權(quán)限適配及兼容庫的實現(xiàn)

MVP 筆記

【Android】快速開發(fā)偷懶必備(二) 支持DataBinding啦~爽炸,一行實現(xiàn)花式列表

逆向思考,優(yōu)化/重構(gòu)你的代碼邏輯

Android自定義ClockView實現(xiàn)時鐘效果

Android 實現(xiàn)無網(wǎng)絡(luò)頁面切換

完全自定義控件-自定義絢麗水波紋效果

開發(fā)工具總結(jié)(8)之圖文并茂全面總結(jié)上百個AS好用的插件(下)

glide 一個強大的圖片加載框架

聽說你Binder機制學(xué)的不錯,來面試下這幾個問題(二)

Android——MVP——封裝一個通用的Module

Android適配全面總結(jié)(三)—-ROM適配

Android 劉海屏適配總結(jié)

谷歌Flutter1.0正式版發(fā)布

Android應(yīng)用坐標(biāo)系統(tǒng)全面詳解

活在android之觀察者模式

Linux環(huán)境下Android開發(fā)常用命令

Android 拍照獲取縮略圖以及完整圖片(適配androidN)

[譯]使用MVI打造響應(yīng)式APP(一):Model到底是什么

Android實現(xiàn)沉浸模式的體驗

Android Handle解析

一個根據(jù)代碼自動生成UML的插件,助你看源碼事半功倍

Groovy學(xué)習(xí)筆記4:特殊注解

觀察者模式學(xué)習(xí)

OkHttp基礎(chǔ)學(xué)習(xí)(五),文件上傳

躺著過坑—斷電導(dǎo)致AVD和SDK Manager無法正常啟動

Android 一起來看看 ThreadLocal

萬能的dialog庫(包括類似popwindow效果)

Android 自定義View學(xué)習(xí)(十四)——View滑動學(xué)習(xí)

手把手教你從零開始做一個好看的 APP – Day four

Android——RecyclerView入門學(xué)習(xí)之DiffUtil(四)

一次使用Kotlin實現(xiàn)酷炫多選操作的嘗試

Android 帶你擼一個好玩的 DoodleView(涂鴉)

十分鐘了解Android觸摸事件原理(InputManagerService)

Android 自定義view,畫圖板練習(xí)

Android 打造一個絲滑的自動輪播控件

Android Camera 系列(三)Camera API 詳解

設(shè)計模式(一) 工廠模式 五種寫法總結(jié)

我的 2017

RxJava常用操作符

Android 自定義view相關(guān)

為你的Android Studio打造帥氣的LogCat配色

編輯距離 (Levenshtein Distance算法)

Android 自定義View學(xué)習(xí)(十三)——View觸控事件學(xué)習(xí)

Android DEPPLINK、APPLink原理簡析

不要打破鏈?zhǔn)秸{(diào)用!一個極低成本的RxJava全局Error處理方案

Flutter基礎(chǔ)篇(7)– Flutter更新錯誤全面解決方案(圖文+視頻講解)

Android 讀取聯(lián)系人數(shù)據(jù)庫

簡單圖片加載框架的打造-(了解如何設(shè)計一個圖片加載框架)

Android 解鎖 Gradle 依賴新姿勢

Android官方架構(gòu)組件DataBinding雙向綁定篇: 觀察者模式的殊途同歸

當(dāng)Android遇到單例模式

Http基礎(chǔ)知識學(xué)習(xí)(一)

面試必備:LinkedList源碼解析(JDK8)

[譯]Android開發(fā)從Dagger2遷移至Kodein的感受

SQL定義

Material Design學(xué)習(xí):DrawerLayout+NavigationView

Android窗口管理分析(1):View如何繪制到屏幕上的主觀理解

Android動手實現(xiàn)一個側(cè)滑刪除控件,支持Recyclerview

使用友盟分享和登陸以及使用時要注意的坑

活在Android之Builder模式

OkHttp基礎(chǔ)學(xué)習(xí)(一),Get請求

Linux工具命令之crontab

DiskLruCache簡介

完全自定義控件-簡單環(huán)形進度條制作

手把手教你從零開始做一個好看的 APP – Day five

Flutter基礎(chǔ)篇(1)– 跨平臺開發(fā)框架和工具集錦

Android——RecyclerView入門學(xué)習(xí)之ItemDecoration(一)

Android硬件加速(二)-RenderThread與OpenGL GPU渲染

Flutter進階篇(5)– 使用Flutter創(chuàng)建插件詳解并發(fā)布到Pub庫

Java多邊型無序點排序(地圖繪制多邊形)

Gradle學(xué)習(xí)筆記(一)基本配置

gson解析assets目錄下的json文件(給新手看的)

仿淘寶、京東拖拽商品詳情(可嵌套ViewPager、ListView、WebView、FragmentTabhost)

Swift 與 Kotlin 的簡單對比,簡直是太像了

RxJava——基礎(chǔ)學(xué)習(xí)(六),過濾操作符

Android官方架構(gòu)組件Paging-Ex:為分頁列表添加Header和Footer

Android匿名共享內(nèi)存(Ashmem)原理

Android 開發(fā)中零散知識點記錄

正則表達式學(xué)習(xí)(上)

理解RxJava(四)Subject用法及原理分析

Android 一起來看看面試必問的消息機制

[譯]Java將Powermock和Mockito搭配進行單元測試

Android內(nèi)容服務(wù)ContentService原理淺析

程序猿Skr —– Flutter之歌

Android Bitmap變遷與原理解析(4.x-8.x)

Material Design學(xué)習(xí):CoordinatorLayout+AppBarLayout+CollapsingToolbarLayout

告別Dagger2模板代碼:DaggerAndroid原理解析

教你打造Android揭面水波動畫庫-AnimationHelper

Flutter 開發(fā)遇到問題

Android——CoordinatorLayout之Behavior入門學(xué)習(xí)(下)

Android狀態(tài)模式的幾種應(yīng)用場景

簡單幾行代碼讓ViewPager實現(xiàn)垂直滑動效果

Android 一起來看看 HttpURLConnection 和 HttpClient 的區(qū)別

Zxing二維碼掃描和那些坑

我的 2018

認識Concurrent包中的 CAS

Android自定義View:MeasureSpec的真正意義與View大小控制

Android中g(shù)radle的implementation和api指令的區(qū)別

Android meta-data知識介紹及應(yīng)用

從幾行代碼學(xué)習(xí)Java類加載機制-從懵逼到放棄

Android面試:主線程中的Looper.loop()一直無限循環(huán)為什么不會造成ANR?

閑散整理,帶你走進Android短信源碼

Android在string.xml中加粗文字

Java 打印心形

Android 計時的兩種思路

Android中的內(nèi)存泄漏和內(nèi)存溢出.md

全面總結(jié)側(cè)滑菜單的5種實現(xiàn)方式

JNI源碼分析 (并實現(xiàn)JNI動態(tài)注冊)

Material Design學(xué)習(xí):ToolBar 開發(fā)使用簡介

CalendarListView 日歷列表

Android 擼起袖子,自己封裝 DialogFragment

TitleItemDecoration

最全的BAT大廠面試題整理

一行Java代碼實現(xiàn)RecyclerView的Adapter?一行都不需要!

程序員漫畫系列-Linux內(nèi)核里面的那些小企鵝們

Android 動畫基礎(chǔ)知識學(xué)習(xí)(上)

Activity生命周期函數(shù)理解

手把手教你從零開始做一個好看的 APP – Day one

設(shè)計模式(二) 三種適配器模式 總結(jié)和使用場景

程序員在簡書|一個小城市,小公司的小程序員

程序員的江湖,黑話一定要牢記

Android 神兵利器Dagger2使用詳解(三)MVP架構(gòu)下的使用

2017年你絕對想嘗試的25個新安卓庫(持續(xù)更新中…)

小知識-Android一個應(yīng)用多個圖標(biāo)的幾種實現(xiàn)方式

【游客必看】 博主所有文章目錄

Android 自定義View學(xué)習(xí)(二)——開始了解Canvas和Paint

Java編程思想第21章并發(fā)讀書筆記(下)

常用Java并發(fā)數(shù)據(jù)結(jié)構(gòu)

Flutter進階篇(4)– Flutter的Future異步詳解

教你如何最快寫出酷炫的dialog對話框

開發(fā)工具總結(jié)(5)之Markdown語法圖文全面詳解及其工具介紹

AndroidStudio基本debug調(diào)試技巧縱覽

動態(tài)圖解&實例 ConstraintLayout Chain

Android 一起來看看 7.0 的新特性 FileProvider

Android 一個另類的顯示圓形圖片方式

Android8.0適配前臺定位服務(wù)service

Android 實習(xí) | 如何在春招中拿到滿意的 offer

Android淺析SurfaceView

Gradle學(xué)習(xí)筆記(三)管理依賴

OkHttp基礎(chǔ)學(xué)習(xí)(四),無網(wǎng)絡(luò)讀取本地緩存,有錯誤,待改正

Android 滑動選擇身高體重控件——RulerView

10分鐘學(xué)會ikvStockChart制作K線圖(股票走勢圖)

Android —— 微信Sqlite數(shù)據(jù)庫框架WCDB學(xué)習(xí)

當(dāng)Android遇見工廠模式

Android 自定義View學(xué)習(xí)(一)——準(zhǔn)備

WebView深度學(xué)習(xí)(一)之WebView的基本使用以及Android和js的交互

一個工程帶你學(xué)會簡單使用RxJava+Retrofit

Android 簡易簽名板

【Android】你可能不知道的Support(一) 0步自動定向刷新SortedList

【Android】ListView、RecyclerView、ScrollView里嵌套ListView 相對優(yōu)雅的解決方案:NestFullListView

優(yōu)化Android Studio/Gradle構(gòu)建

針對Android中類的重載方法很多時的幾種優(yōu)化解決方案

幾步教你怎么寫MVP

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 205,236評論 6 478
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 87,867評論 2 381
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 151,715評論 0 340
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 54,899評論 1 278
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 63,895評論 5 368
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,733評論 1 283
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 38,085評論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,722評論 0 258
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,025評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,696評論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 37,816評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 33,447評論 4 322
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,057評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,009評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,254評論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 45,204評論 2 352
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,561評論 2 343

推薦閱讀更多精彩內(nèi)容