原创 Android—View事件分發與View子類

View的事件分發 4個操作: DOWN: 當用戶手指按下時 MOVE: 當用戶開始滑動時 UP: 用戶擡起手指 CANCEL: 取消操作,事件被無法到達時 3個方法: dispatchTouchEvent()          負責將事

原创 Android—EventBus使用與源碼分析

EventBus 安卓事件發佈/訂閱框架 事件傳遞既可用於Android四大組件間通訊 EventBus的優點是代碼簡潔,使用簡單,並將事件發佈和訂閱充分解耦 在onStart進行註冊,onStop進行註銷。 implementati

原创 Android—內存泄漏問題分析及應對

內存泄露():程序在向系統申請分配內存空間後(new),在使用完畢後未釋放。結果導致一直佔據該內存單元,我們和程序都無法再使用該內存單元,直到程序結束,這是內存泄露。 內存溢出(OOM):程序向系統申請的內存空間超出了系統能給的。比如內存

原创 Java—TCP與HTTP連接

TCP/UDP: TCP面向連接、字節流、全雙工的可靠信道,發送端時經過各層時都要附加上相應層的協議頭和協議尾(僅數據鏈路層需要封裝協議尾)部分,與原數據大小不同。 UDP無連接、報文流、不可靠信道,發送時與原數據大小相同。 TCP連接:

原创 Android—逐幀、補間、屬性動畫

1、Tween Animation 補間動畫       這類動畫比較簡單,一般就是平移、縮放、旋轉、透明度,或者其組合,可以用代碼或者xml文件的形式,推薦使用xml文件形式,因爲可以複用。       四個動畫效果實現類:Transl

原创 Java—零碎難記筆試考點(持續更新)

String類是final類 “對String對象的任何改變都不影響到原對象,相關的任何change操作都會生成新的對象”。 public class Test{ public static void main(String[]

原创 Android—設計模式原則及常見的設計模式

設計模式六大原則: 單一職責原則:實現類要職責單一,類之間不相互影響。 里氏替換原則:不要破壞繼承體系,共享的父類方法應該保持不變,不能被子類重新定義。我們應該將父類定義爲抽象類,並定義抽象方法。 依賴倒置原則:中心思想是面向接口編程。

原创 Android—OkHttp同步異步請求源碼分析與區別

OkHttp同步請求步驟: 創建OkHttpClient,客戶對象 創建Request,請求主體,在請求主體設置請求的url,超時時間等 用newCall(request)將Reuqest對象封裝成Call對象,然後用Call對象的exe

原创 Android—顯示窗口調用相機與相冊

關於Android點擊頭像顯示窗口調用相機與相冊 主要有七步: 點擊事件,窗口初始化,點擊回調事件,對照片裁剪,裁剪照片保存,聲明FileProvider,編寫FileProvider的xml文件 1.點擊事件 這裏只簡單的設置了一個圖片

原创 Android—APK與JVM-Dalvik-ART

APK APK的本質是一個zip壓縮包,如果將後綴名改成.zip,就可以解壓,APK 文件與 Zip 文件最大的一個不同是 APK 包含簽名信息,用於保證安裝包安全不被修改 res文件夾:用於存放Android資源文件的目錄,裏面有dra

原创 java—單例模式實現方式

1.餓漢式(線程安全,調用效率高,但是不能延時加載):JVM初始化的時候創建對象,不能延時 public class ImageLoader{ private static ImageLoader instance = ne

原创 Java—JVM加載機制

編程語言有兩種: 1、編譯型語言        將代碼一次性編譯成計算機可識別的二進制文件,語言有C和C++ 2、解釋型語言         通過解釋器,一行行讀取我們編寫的代碼轉換成二進制數據後執行,JVM就是解釋器,語言有java和k

原创 Java—Collection與Map子類結構特點

  Collection  <類型>     List 可以重複,有順序             ArrayList     主選              結構:數組      特點:查找快,增刪慢         線程不安全,效率高