換個方式看UI:丟棄LayoutInspector看UI

前言

UI一直是移動開發的一個重要的組成部分,今天在這裏就和大家分享一篇高質量技術文,帶大家換個方式看UI。

自從AS升級到4.x後,你的LayoutInspector會不會經常和我一樣

明明連着設備,卻檢測不到對應的進程?

檢閱速度非常慢,直到超時都沒有出畫面?

勾選Live Update後,畫面延遲成了PPT,最後放棄Live Update?

終於,我放棄了LayoutInspector,選用更輕量的Uinspector來輔助完成一些基本的ui檢查。

Uinsepctor是什麼?

Uinspector 是一個集成在Android應用內的ui檢閱工具。

開啓 Uinspector 後,通過點擊屏幕上的元素來選取要檢閱的目標,彈出的面板中可以查看目標 View 的佈局和屬性。

相比起LayoutInspector有什麼優勢?

1. 輕便快速

從手機的通知欄打開Inspector,直接點擊屏幕就可以看到目標屬性!
從通知欄點擊關閉即可停止檢閱,用完即走。

2. 追蹤動畫

相比起幻燈片級的“Live Update”,Uinspector 直接運行在你的應用進程中,可以通過監聽 View 的變化實時作出反饋,追蹤佈局/屬性的變化,甚至是動畫。

3. 支持添加你的自定義View和自定義屬性

Uinspector 可以集成其他第三方庫,查看他們的特有屬性:

當圖片資源加載異常時,你可以點擊圖片地址用瀏覽器打開,快速確認是客戶端加載問題還是圖片資源本身的問題!

大部分的自定義 View 屬性都非常豐富,使用 LayoutInspector 都是無法直接查看的。

而利用 Uinspector 加上你自己的集成庫,則可以方便的支持這些屬性。第三方集成庫文檔

甚至這個彈出面板的樣式和內容不滿足你的需求,也可以添加你自己開發的面板進去

如何使用Uinsepctor?

只需要在項目的 build.gradle 文件中添加一句:

dependencies {
    debugImplementation 'com.huya.mobile:Uinspector:1.0.5'
}
複製代碼

就可以了! 如果不需要自定義開發的話,無需添加任何代碼。

可選地,也可以根據需要添加一些第三方集成庫:

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'
}

需要注意的是:

打開 Uinspector 後,依然可以正常對應用進行手勢操作,比如滑動屏幕,back鍵返回等等。
但是,單擊事件會被消費,成爲選中檢閱目標的操作
在這種模式下,可以通過雙擊來代替原來的點擊,來觸發原來onClickListener的操作!

源碼地址: github.com/YvesCheung/…

原文地址:https://juejin.cn/post/6916779129798934536

最後

現在搞Android,UI是必須要會的一個點,UI這塊知識是現今使用者最多的。作爲一個有八年開發經驗的過來人,我也一直在整理這個方向的資料幫助後來的開發者。

這些年來,不僅僅是UI方面,我還整理了整個體系的資料,下面先來個思維導圖:

下面是我整理的資料的部分截圖。

這些資料都是免費分享給大家的,如果大家感興趣,可以直接點擊下方藍色字體,裏面有免費獲取途徑。
我的GitHub:https://github.com/xieyuliang/Tecent-Android-Archiecture

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章