導航:首頁 > 操作系統 > android背景毛玻璃

android背景毛玻璃

發布時間:2025-01-07 20:34:03

A. 誰說Android沒有好的對話框

安卓自5.0後自帶的對話框都是沉浸式體驗,用戶體驗極佳。對話框的效果是可以自己定義的,圓角、背景透明,毛玻璃,過度動畫,如果想要完全可以和IOS的效果一樣,但是就不符合Android的material設計規范了。下面是兩種效果的對話框

  1. 自定義圓角對話框 2.material效果的對話框

B. Android上如何做出毛玻璃模糊的效果

上圖展示了一種很典型的視覺效果——文字的背景不再是固定的,而是將底層的相應區域模糊化,好似蓋了一層毛玻璃。

其原理也很簡單,分為三步走:

裡面涉及到的技術點有兩個:

ViewTreeObserver裡面有一個監聽器為OnPreDrawListener

當它執行時,布局文件經過了 measured laid out displayed ,即將被繪制到屏幕,此時調用它的 getDrawingCache() 方法可以獲得其Bitmap。完整方法如下:

方案有兩種:

兩種方案都可以進行對Bitmap對象的模糊處理,但當模糊半徑增大時,StackBlur能夠保持較好的性能,且不受Renderscript半徑25px的限制。

在GitHub項目有一個項目 blurring ,其實現了StackBlur演算法的Java實現版FastBlur,並給出兩種方案效率對比demo。經過測試,

看起來,Renderscript的性能更好,應該是Android上對Renderscript做了優化。盡管如此,考慮到Android中渲染一幀的時間應該不超過16ms(60fps),這樣的性能並不友好。 blurring 作者想出了另外一種思路:

這時候,效率提升非常明顯:

生成的模糊圖片當然有所不同,但是都是模糊背景,所以對用戶而言沒有太大差別。

好了,至此Android上製作毛玻璃背景模糊效果的技術都確定了。

我在 blurring 基礎上做了封裝,介面如下:

相對應類有兩個:

閱讀全文

與android背景毛玻璃相關的資料

熱點內容
什麼叫伺服器內部錯誤4o4 瀏覽:486
單片機原理復習 瀏覽:433
打不開頭條任務伺服器怎麼辦 瀏覽:643
戰雷錄像在哪個文件夾 瀏覽:464
加密驗證的門禁卡 瀏覽:741
java輸出心 瀏覽:532
程序員的身體素質調查 瀏覽:383
python做一個登錄系統怎麼改界面 瀏覽:884
楊穎緩解壓力的方法 瀏覽:144
約苗app在哪裡改地址 瀏覽:819
tuxedo的加密協議 瀏覽:728
javapdftojpg 瀏覽:712
程序員軟考課程 瀏覽:274
Android框架工程師 瀏覽:387
計算機編程機器人工程師招聘 瀏覽:683
怎麼添加mite伺服器 瀏覽:581
方舟怎麼命令一隻恐龍手機版 瀏覽:712
javaqq郵箱發送 瀏覽:171
cms淘寶客網站源碼 瀏覽:932
如何連接選股伺服器 瀏覽:30