動(dòng)畫分類Android動(dòng)畫可以分3種:View動(dòng)畫,幀動(dòng)畫和屬性動(dòng)畫;屬性動(dòng)畫為API11的新特性,在低版本是無(wú)法直接使用屬性動(dòng)畫的,但可以用nineoldAndroids來(lái)...

動(dòng)畫分類Android動(dòng)畫可以分3種:View動(dòng)畫,幀動(dòng)畫和屬性動(dòng)畫;屬性動(dòng)畫為API11的新特性,在低版本是無(wú)法直接使用屬性動(dòng)畫的,但可以用nineoldAndroids來(lái)...
這是AndroidUI繪制流程分析的第一篇文章,主要分析當(dāng)我們點(diǎn)開(kāi)應(yīng)用程序的時(shí)候,到界面中的View顯示出來(lái),這中間的一系列流程。 在介紹View繪制流程之前,咱們先簡(jiǎn)單介紹...
這是AndroidUI繪制流程分析的第二篇文章,主要分析界面中View是如何繪制到界面上的具體過(guò)程。 1、ViewRoot和DecorView ViewRoot對(duì)應(yīng)于View...
Android繪制整體流程 首次View的繪制流程是在什么時(shí)候觸發(fā)的? 答案在ActivityThread.handleResumeActivity里觸發(fā)的。 WindowM...
這篇文章已經(jīng)寫得非常經(jīng)典了: 點(diǎn)擊事件傳遞規(guī)則 MotionEvent 在手指觸摸屏幕后產(chǎn)生的一系列事件中,典型的事件類型有如下幾種: ACTION_DOWN 在屏幕按下時(shí) ...
Handler是Android中的消息處理機(jī)制,是一種線程間通信的解決方案,同時(shí)你也可以理解為它天然的為我們?cè)谥骶€程創(chuàng)建一個(gè)隊(duì)列,隊(duì)列中的消息順序就是我們?cè)O(shè)置的延遲的時(shí)間。 ...
OkHttp 是一款用于 Android 和 Java 的網(wǎng)絡(luò)請(qǐng)求庫(kù),也是目前 Android 中最火的一個(gè)網(wǎng)絡(luò)庫(kù)。OkHttp 有很多的優(yōu)點(diǎn): 在 HTTP/2 上允許對(duì)同...
基本用法 我們以這段簡(jiǎn)單的代碼為基礎(chǔ),講解下貫穿整個(gè)ReactiveX設(shè)計(jì)的四個(gè)概念:觀察者,被觀察者,事件,訂閱。 觀察者對(duì)事件進(jìn)行響應(yīng)的對(duì)象,也可以稱作消費(fèi)者,在上述的代...
ARouter主要是用于組件化開(kāi)發(fā)中的組件之間的通信。 從ARouter的用法透析組件通信原理 ARouter的實(shí)現(xiàn)原理 在代碼里加入的@Route注解,會(huì)在編譯時(shí)期通過(guò)ap...
Retrofit是一個(gè)基于AOP思想,對(duì)RestfulApi注解進(jìn)行動(dòng)態(tài)代理的網(wǎng)絡(luò)框架; 一.基本用法 1.定義接口 在這個(gè)接口定義中,用注解@GET("/demobiz/a...
Android App的頁(yè)面是有生命周期的,Glide比較好的一個(gè)功能就是具有生命周期管理功能,能夠根據(jù)頁(yè)面和APP的生命周期來(lái)管理圖片的加載和停止,也開(kāi)放接口供用戶在內(nèi)存緊...
如果沒(méi)有緩存,在大量的網(wǎng)絡(luò)請(qǐng)求從遠(yuǎn)程獲取圖片時(shí)會(huì)造成網(wǎng)絡(luò)流量的浪費(fèi),尤其是面對(duì)高清大圖的加載更是如此,為了節(jié)省帶寬,也為了減少用戶等待的時(shí)間,合理的緩存方式必不可少,這也是G...
Glide是Android開(kāi)發(fā)中常用的圖片框架,其最基本用法例如Glide.with(context).load(url).into(imageView),我們沿著此鏈?zhǔn)秸{(diào)用...
Q: 什么是WorkManager? WorkManager 是一個(gè) Android Jetpack 庫(kù),當(dāng)滿足工作的約束條件時(shí),用來(lái)運(yùn)行可延遲、需要保障的后臺(tái)工作,即使應(yīng)用...
Q: SaveStateHandle的作用? ViewModel僅可實(shí)現(xiàn)應(yīng)用在屏幕旋轉(zhuǎn)等配置發(fā)生變化時(shí)保存與恢復(fù)數(shù)據(jù),無(wú)法實(shí)現(xiàn)Activity在后臺(tái)時(shí)因?yàn)閮?nèi)存不足被異常銷毀時(shí)...
Q: 什么是Navigation? 導(dǎo)航是指允許用戶在應(yīng)用中的不同內(nèi)容段之間導(dǎo)航、進(jìn)入和退出的交互。Android Jetpack 的 Navigation 組件可幫助您實(shí)現(xiàn)...
Q:什么是Paging? Paging 庫(kù)提供了列表中分頁(yè)數(shù)據(jù)加載的解決方案,可幫助您加載和顯示來(lái)自本地存儲(chǔ)或網(wǎng)絡(luò)中更大的數(shù)據(jù)集中的數(shù)據(jù)頁(yè)面。此方法可讓您的應(yīng)用更高效地利用網(wǎng)...
Q:什么是LiveData? LiveData[https://developer.android.google.cn/reference/androidx/lifecycl...
是MVVM架構(gòu)的一個(gè)層級(jí),用來(lái)聯(lián)系View和model之間的關(guān)系。 官方文檔解釋: ViewModel 類旨在以注重生命周期的方式存儲(chǔ)和管理界面相關(guān)的數(shù)據(jù)。 注重生命周期的方...
Q:什么是LifeCycle androidx.lifecycle[https://developer.android.google.cn/reference/android...