原创 android View的相關知識點

自定義View—–利用Canvas畫圖 對於android開發者來說,炫酷的界面可以給APP加分。但是由於第三方的UI有時候不符合我們的需求,這時候就需要自己寫View,因此對於View繪製的基礎我們還是需要掌握。 自定義View

原创 onMeasure onLayout onDraw

對於自定義View,其繪製的基本步驟爲measure(測量),layout(佈局),draw(繪製)三個階段。而ViewRootImpl作爲連接view和android系統的重要組成部分(ViewRootImpl 類,是連接 Wi

原创 JAVA基礎(二)LinkedHashMap和ArrayMap

LinkedHashMap 前文中介紹了java集合中最常見的HashMap數據結構,本文將介紹與之相關的LinkedHashMap數據結構。 public class LinkedHashMap<K,V> extends

原创 Android筆記(四)DecorView & ViewRootImpl & Window

這三者之間的關係網絡上有很多篇不錯的blog。比如這篇。爲了讓自己更加熟悉View繪製的流程,在這裏特意將這三者的關係好好梳理一番。 爲了理清這三者的關係,還是先上一張圖 ViewRootImpl是ViewRoot的實現類

原创 比較Activity和Dialog的窗口添加流程

之前在我的這篇blog中寫到了Activity啓動時activity / window /view之間的關係。大概的流程是,先創建activity,然後attach中執行window創建,接着setContentView中創建De

原创 Android筆記(18)應用層Crash處理邏輯

Android發生Crash時,說明代碼執行出現異常,此時的運行時環境(RunTime)將會首先感知到問題。如果此時代碼設置了try-catch,將這個運行時異常RunTimeException(更加具體的可能是NPE or 數組

原创 JAVA基礎(七) ArrayList與LinkList

ArrayMap是java中重要的數據結構,底層是基於動態數組的結構實現。包括下面幾個關鍵特徵: 初始化容器大小爲10 沒有擴容因子這一說法,或者說擴容因子大小爲1。當新增加後的數據量超過容器本身時,容器將按照 oldsize

原创 Android筆記(十七)Android多線程問題

參考 https://mp.weixin.qq.com/s/gBZcogHizremZoJRvd8fHQ 線程的幾個方法 run()。非靜態 start()。非靜態 join()。非靜態。如果線程 A 調用了線程 B 的 joi

原创 Android 開發之獲取相冊照片和獲取拍照照片

在Android的開發過程中,我們可能會讀取手機裏面的照片或者通過相機拍攝獲取照片,這是兩種常用的獲取圖片的方式,在做項目過程中也會經常遇到,下面來介紹一下這兩種獲取方式.. 1.從本地相冊獲取照片: 一般就是寫出這個方法 [

原创 Android筆記五(LayoutInflater)

LayoutInflater。Layout 佈局,inflater,充氣,填充,這個類用於將XML文件轉換成相對應的ViewGroup和控件Widget等View。官方的解釋爲 Instantiates a layout XML

原创 Android筆記二(MessageQueue && Message)

MessageQueue 對於這個類,開始時,我們需要注意到google源碼對其的註釋說明: 消息是通過Handler以及Looper添加到Messagequeue消息隊列中去的。我們可以通過new Looper()構造方法

原创 Android筆記(一 Looper)

Looper類分析 Looper、Thread、Handler以及MessageQueue是Android通信中消息機制中幾個關鍵點,我們常常會用下面的圖來表示他們之間的關係,以及構成的整個Android消息機制 在上圖中,H

原创 深入理解Android內核——Android啓動分析

系統啓動進程 android設備的啓動分爲三個階段:Boot Loader, Linux Kernel,Android 系統服務。Android系統實際上是運行在Linux Kernel之上的一系列系統服務進程。init進程是An

原创 Android筆記三(Handler)

關於Android消息機制中的另外一個類Handler,我在之前的兩篇文章中有做講解 handler message looper機制 handler message looper機制(二) 這裏再做下總結: Handle

原创 Android 的幾種數據存儲方式

Android 存儲方式比較多,常用的有4中存儲,他們分別是 SharedPreferences存儲方式 文件存儲 數據庫存儲 ContentProvider存儲 SharedPreferences存儲方式 常常用來進行一些簡