原创 ListView的使用的一丟丟經驗

在使用listview的過程中,會碰到滑動卡頓的問題。這個問題尤其在item view的佈局比較複雜的時候存在。帶來的使用體驗會很差,在一些較低端的設備上,甚至有可能發生anr。 使用viewHolder 這個其實已經算是一個

原创 Dagger2 是如何實現依賴注入的?

Dagger2流行已經有一段時間了,是一個很強大的依賴注入框架。以前接觸過Spring的IOC,瞭解過它的實現原理是用反射實現的。而移動端是對資源很敏感的,Dagger2作爲移動端的一個主流框架,肯定不會用一樣的套路去玩。所以抽空

原创 MVP中Presenter複用思路和Inject-mvp

MVP模式早已經不是什麼新鮮詞了,這裏不再贅述。最近在重構代碼的過程中,發現了一件及其痛苦的事情:很多時候,model層在應用中是很薄的,大多數的業務邏輯都在Presenter層,但是由於模版 代碼,Activity(View)-

原创 ARouter使用和案例

ARouter的使用 官網github: https://github.com/alibaba/ARouter/blob/master/README_CN.md 這裏對其做了分類整理,以及一些想法,便於更方便理解。 跳轉 跳轉Ac

原创 自己動手寫一個簡單圖片輪播的控件

簡單圖片輪播的控件的實現 本人菜鳥。 之前想找個輪播的控件,網上找了幾篇文章,覺得搞的很複雜,思路也不是很清晰。所以乾脆就自己寫了。總的來說,是比較簡單的。 思路: 圖片輪播,其實就是滑動圖片由手動改爲自動而已。針對滑動圖片,

原创 handler ,Looper的機制,分析源碼(一)線程切換。

handler和looper配合使用是爲了線程之間通信用的。 這裏拿一個我們經常使用handler的簡單例子說明(僞代碼): mianTread:{ Handler handler =new Handler(); }

原创 android touch事件分發機制的探究

android touch事件分發機制的探究 首先有個認知: view、viewGroup、各種layout之間的關係: viewGroup是view的子類,layout是viewGroup的子類。 自定義viewGroup

原创 從兩種單例模式談java類加載過程中靜態變量的初始化問題

前言 之前的文章裏有總結過java的單例怎麼寫,具體鏈接 java中的7種單例模式。 經常聽到,類的static變量在類加載時就會初始化,於是有了常說的兩種單例模式的對比:餓漢式和靜態內部類模式。通常的說法是,兩種都是支持線程安全

原创 java 內類和外類的關係

內類有哪些 內類(inner class)是相對於外部類(outer class)來說的,包括:內部類/接口,內部匿名類/接口。 內部類和外部類的關係 內部類是可以訪問外部類的成員變量的,包括私有變量(private)、靜態變量(

原创 從線程池模型理解線程池的工作原理

首先要知道線程池是用來幹嘛的,線程池是通過複用線程達到最大利用資源的。 線程池的關鍵參數 線程池的構造方法如下 public ThreadPoolExecutor(int corePoolSize,

原创 兩種責任鏈式調用的總結

一、有中斷式 public abstract class ChainHandler<T> { private ChainHandler nextHandler; public boolean process (T e

原创 記一次webview 中使用shouldInterceptRequest的踩坑

shouldInterceptRequest 是WebViewClient的一個方法,官方的說明: /** * Notify the host application of a resource request and al

原创 ARouter詳解

ARouter的使用 官網github: https://github.com/alibaba/ARouter/blob/master/README_CN.md 這裏對其做了分類整理,以及一些想法,便於更方便理解。 跳轉 跳轉Acti

原创 MVP中Presenter複用的思考

MVP模式早已經不是什麼新鮮詞了,這裏不再贅述。最近在重構代碼的過程中,發現了一件及其痛苦的事情:很多時候,model層在應用中是很薄的,大多數的業務邏輯都在Presenter層,但是由於模版 代碼,Activity(View)->P

原创 android activity的啓動過程源碼分析

之前被問起activity的一些源碼,以前只是零零星星的看過一點,並沒有多深入和系統的瞭解。作爲android從業人員,沒有認認真真的研究一下activity的源碼,我都有些面紅耳赤。不過,看源碼永遠都不嫌晚,那就看起來唄。 當然是從最