自從AS升級(jí)到4.x后凌蔬,你的LayoutInspector會(huì)不會(huì)經(jīng)常和我一樣
明明連著設(shè)備,卻檢測(cè)不到對(duì)應(yīng)的進(jìn)程豌骏?
檢閱速度非常慢龟梦,直到超時(shí)都沒(méi)有出畫(huà)面?
勾選Live Update后窃躲,畫(huà)面延遲成了PPT计贰,最后放棄Live Update?
終于蒂窒,我放棄了LayoutInspector躁倒,選用更輕量的Uinspector來(lái)輔助完成一些基本的ui檢查。
Uinsepctor是什么洒琢?
Uinspector
是一個(gè)集成在Android應(yīng)用內(nèi)的ui檢閱工具秧秉。
開(kāi)啟 Uinspector
后,通過(guò)點(diǎn)擊屏幕上的元素來(lái)選取要檢閱的目標(biāo)衰抑,彈出的面板中可以查看目標(biāo) View
的布局和屬性象迎。
查看View的大小/邊距/基本屬性 | 查找目標(biāo)所在的Activity/Fragment,快速定位所在代碼 |
---|---|
|
相比起LayoutInspector有什么優(yōu)勢(shì)呛踊?
1. 輕便快速
從手機(jī)的通知欄打開(kāi)Inspector砾淌,直接點(diǎn)擊屏幕就可以看到目標(biāo)屬性!
從通知欄點(diǎn)擊關(guān)閉即可停止檢閱谭网,用完即走汪厨。
2. 追蹤動(dòng)畫(huà)
相比起幻燈片級(jí)的“Live Update”,Uinspector
直接運(yùn)行在你的應(yīng)用進(jìn)程中愉择,可以通過(guò)監(jiān)聽(tīng) View
的變化實(shí)時(shí)作出反饋劫乱,追蹤布局/屬性的變化,甚至是動(dòng)畫(huà)锥涕。
3. 支持添加你的自定義View和自定義屬性
Uinspector
可以集成其他第三方庫(kù)衷戈,查看他們的特有屬性:
查看Glide的圖片源 | 查看Fresco的圖片源 | 查看Lottie的動(dòng)畫(huà)屬性 |
---|---|---|
當(dāng)圖片資源加載異常時(shí),你可以點(diǎn)擊圖片地址用瀏覽器打開(kāi)层坠,快速確認(rèn)是客戶(hù)端加載問(wèn)題還是圖片資源本身的問(wèn)題殖妇!
大部分的自定義 View
屬性都非常豐富,使用 LayoutInspector
都是無(wú)法直接查看的窿春。
而利用 Uinspector
加上你自己的集成庫(kù)拉一,則可以方便的支持這些屬性。第三方集成庫(kù)文檔旧乞。
甚至這個(gè)彈出面板的樣式和內(nèi)容不滿(mǎn)足你的需求蔚润,也可以添加你自己開(kāi)發(fā)的面板進(jìn)去。
如何使用Uinsepctor尺栖?
只需要在項(xiàng)目的 build.gradle
文件中添加一句:
dependencies {
debugImplementation 'com.huya.mobile:Uinspector:1.0.5'
}
復(fù)制代碼
就可以了嫡纠! 如果不需要自定義開(kāi)發(fā)的話(huà),無(wú)需添加任何代碼延赌。
可選地除盏,也可以根據(jù)需要添加一些第三方集成庫(kù):
dependencies {
debugImplementation 'com.huya.mobile:Uinspector-optional-glide:1.0.5'
debugImplementation 'com.huya.mobile:Uinspector-optional-fresco:1.0.5'
debugImplementation 'com.huya.mobile:Uinspector-optional-lottie:1.0.5'
}
復(fù)制代碼
需要注意的是:
打開(kāi) Uinspector
后,依然可以正常對(duì)應(yīng)用進(jìn)行手勢(shì)操作挫以,比如滑動(dòng)屏幕者蠕,back鍵返回等等。
但是掐松,單擊事件會(huì)被消費(fèi)踱侣,成為選中檢閱目標(biāo)的操作!
在這種模式下大磺,可以通過(guò)雙擊來(lái)代替原來(lái)的點(diǎn)擊,來(lái)觸發(fā)原來(lái)onClickListener
的操作!
作者:YvesCheung
鏈接:https://juejin.cn/post/6916779129798934536