原创 Java之泛型ParameterizedType、getGenericSuperclass、getActualTypeArguments

在反射中,我們經常遇到這樣代碼:ParameterizedType、getGenericSuperclass、getActualTypeArguments,今天就讓我們來了解一下。 先來看一段代碼: 這段代碼啥意思?引用一段測試代碼:

原创 Android之LiveData

LiveData本身很簡單,但其代表卻正是 MVVM模式最重要的思想,即 數據驅動視圖(也有叫觀察者模式、響應式等)——這也是擺脫 順序性編程思維的重要一步。 回顧LiveData:從處境尷尬到鹹魚翻身 我們都知道Google在去年的 I

原创 Android之LifeRecycle

概述 在過去的谷歌IO大會上,Google官方向我們推出了 Android Architecture Components,其中談到Android組件處理生命週期的問題,向我們介紹了 Handling Lifecycles。 同時,如何利

原创 Android之ViewModel

原文請參考官方文檔   ViewModel ViewModel類設計用來存儲和管理與UI相關的數據。這樣數據就可以在配置更改中保存,比如屏幕旋轉。 注:如何添加ViewModel依賴可以查看Android 結構組件之Adding Com

原创 如何識別POS機是一清機還是二清機?

POS機一清機是指消費者的付款資金通過清算機構(銀聯、Visa 等或者第三方支付平臺)直接打到商家綁定的賬戶上,中間不經過其他中轉賬戶,有自己獨立的、官方的後臺。 一清機:全稱爲“一次性清算機具”,資金清算途徑如下: 消費者刷卡(付款)

原创 Android之Jetpack簡介

什麼是Jetpack? 爲了更好的促進谷歌在2018年 I/O 發佈大會推出了一套組件集合Jetpack(英文原意爲噴氣發動機組件),主要包括以下內容:   基礎 基礎組件可提供橫向功能,例如向後兼容性、測試和 Kotlin 語言支持。

原创 Android之ComponentCallbacks2

  關於ComponentCallback2 是一個細粒度的內存回收管理回調。 Application、Activity、Service、ContentProvider、Fragment實現了ComponentCallback2接口 開

原创 android之xml tools屬性詳解

第一部分 安卓開發中,在寫佈局代碼的時候,ide可以看到佈局的預覽效果。 但是有些效果則必須在運行之後才能看見,比如這種情況:TextView在xml中沒有設置任何字符,而是在activity中設置了text。因此爲了在ide中預覽效果

原创 Android之TextInputLayout詳解

TextInputLayout是什麼 TextInputLayout主要是作爲EditText的容器,從而爲EditText生成一個浮動的Label,當用戶點擊EditText的時候,EditText中的hint字符串會自動移到EditT

原创 Android之CoordinatorLayout

CoordinatorLayout是什麼? 官方文檔對CoordinatorLayout是這樣描述的: CoordinatorLayout是一個“加強版”FrameLayout,它主要有兩個用途: 1. 用作應用的頂層佈局管理器,也就是

原创 Android之約束佈局ConstraintLayout詳解

目錄 1.介紹 2.爲什麼要用ConstraintLayout 3.如何使用ConstraintLayout 3.1 添加依賴 3.2 相對定位 3.3 角度定位 3.4 邊距 3.5 居中和偏移 3.6 尺寸約束 3.7

原创 Android之事件分發機制總結

用一張圖告訴你Android中的事件傳遞機制   1. 基礎認知 1.1 事件分發的對象是誰? 答:點擊事件(Touch事件) 定義 當用戶觸摸屏幕時(View或 ViewGroup派生的控件),將產生點擊事件(Touch事件) To

原创 Android之RecyclerView巧用payload實現局部刷新

在使用RecyclerView 的過程中,可以調用Adapter以下方法,實現視圖刷新: notifyItemChanged(int position, @Nullable Object payload)    對指定位置的item重新

原创 Android之Binder 原理剖析

一. 前言 這篇文章我醞釀了很久,參考了很多資料,讀了很多源碼,卻依舊不敢下筆。生怕自己理解上還有偏差,對大家造成誤解,貽笑大方。又怕自己理解不夠透徹,無法用清晰直白的文字準確的表達出 Binder 的設計精髓。直到今天提筆寫作時還依舊戰

原创 Java之雙親委託機制

雙親委派機制的工作流程: 1. 當前ClassLoader首先從自己已經加載的類中查詢是否此類已經加載,如果已經加載則直接返回原來已經加載的類。 每個類加載器都有自己的加載緩存,當一個類被加載了以後就會放入緩存,等下次加載的時候就可以直接