原创 onMeasure()與onLayout()的一些總結

測量: onMeasure():  測量自己的大小,如果是容器,遍歷所有子view來計算出該容器的大小 佈局: onLayout():   使用layout()函數對所有子控件佈局 繪製: onDraw():     根據佈局的位置繪圖 

原创 onMeasure()方法與滑動衝突處理

在自定義View和ViewGroup的時候,onMeasure()方法用於確定自己在父控件中的佔用空間大小,我們經常會遇到int型的MeasureSpec來表示一個組件的大小,這個變量裏面不僅有組件的尺寸大小,還有大小的模式。 在系統

原创 Android解決父控件攔截子控件手勢滑動事件的問題

Android解決父控件攔截子控件手勢滑動事件的問題

原创 android自定義高亮引導

原理就是用一個蒙層覆蓋在界面之上,這裏所說的界面從下面獲取: activity.getWindow().getDecorView() 高亮部分原理使用Xfermode圖像混合模式,參考Android進階——Xfermode圖像混合模

原创 android客戶端與服務器時間同步

如何保障android客戶端與服務器時間同步,不受用戶更改系統時間的影響? NTP協議 NTP原理如下: 系統時鐘同步的工作過程如下: Device A發送一個NTP報文給Device B,該報文帶有它離開Device A時的時間戳

原创 WindowManager學習筆記

異常 1、權限問題 android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@6e96dd7 -- p

原创 android提高定位準確度

高德 1、修正AP源數據: 高德地圖app的定位採用1次/秒的定位頻率,同樣存在初次定位不準確的問題,核心原因是設備爲定位器準備的AP源數據(僞基站、WiFi不新鮮)不準確。高德地圖app儘量採用連續定位的策略,當設備在環境中獲得正確

原创 MVVM之列表綁定神器BindingCollectionAdapter

Easy way to bind collections to listviews and recyclerviews with the new Android Data Binding framework 。 簡單的在Data B

原创 android圖片加載

圖片佔內存容量計算公式爲: 圖片所佔內存大小 = 圖片長度(像素) * 圖片寬度(像素) * 一個像素所佔內存空間(單位:字節) 一般地,一個象素所佔內存空間根據機器顏色數(專業詞彙叫色深Color Depth)來決定:(1)

原创 Androidstudio在windows平臺下xml中文報錯問題

用windows平臺下Androidstudio的同學經常碰到這樣一個問題,同樣一份代碼,mac平臺下面運行的好好地,在windows下就報各種databinding的異常,通常是由於用mac的同學在xml文件中databinding

原创 ParameterizedType參數化類型

參數化類型 public interface ParameterizedType extends Type { Type[] getActualTypeArguments(); Type getRawType();

原创 android前臺服務

公司的業務中有一個長時間後臺定位並且上傳定位的功能,在android 6.0之後用雙進程保活的這些黑科技是行不通了,只有用谷歌官方的方法,用前臺服務來實現,類似於QQ音樂這種。 首先要來驗證一下這個方案能不能長時間使應用在後臺保活,下

原创 android面試經

一個五年 Android 開發者百度、阿里、聚美、映客的面試心經 一般情況下第一輪都是基礎面試,需要紮實的基礎 最常用的Android 基礎知識 Java 基礎知識 瞭解一些 常用東西的原理,例如:handler, tHRead 等

原创 android屏幕適配

前提 什麼是dpi、dp、sp、xp… dpi==>device independent pixels(設備獨立像素),不同設備有不同的顯示效果,這個和設備硬件有關;一般爲了支持WVGA、HVGA和QVGA 推薦使用這個,不依賴

原创 如何實現單次變值更新

public class SingleLiveEvent<T> extends MutableLiveData<T> { private static final String TAG = "SingleLiveEvent"