日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > Android >内容正文

Android

android 实现磨砂效果_Android 5.0 下毛玻璃(磨砂)效果如何实现?

發(fā)布時(shí)間:2024/10/8 Android 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 实现磨砂效果_Android 5.0 下毛玻璃(磨砂)效果如何实现? 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

剛剛做技術(shù)調(diào)研,可以給一些優(yōu)缺點(diǎn)的對(duì)比.

目前主流實(shí)現(xiàn)毛玻璃效果(高斯模糊)分大致三種方法:

一 利用RenderScript接口

利用現(xiàn)有Android結(jié)構(gòu),通過(guò)RenderScript調(diào)用底層接口實(shí)現(xiàn)高斯模糊計(jì)算.

// Remix Blurprivate void blur(Bitmap bkg, View view) {

RenderScript rs = RenderScript.create(getActivity());

Allocation overlayAlloc = Allocation.createFromBitmap(rs, overlay);

ScriptIntrinsicBlur blur =

ScriptIntrinsicBlur.create(rs, overlayAlloc.getElement());

blur.setInput(overlayAlloc);

blur.setRadius(radius);

blur.forEach(overlayAlloc);

overlayAlloc.copyTo(overlay);

view.setBackground(new BitmapDrawable(getResources(), overlay));

rs.destroy();

}

說(shuō)明 :

這種方法直接利用Android系統(tǒng)提供的機(jī)制, 從代碼實(shí)現(xiàn)上是最簡(jiǎn)單也相對(duì)高效的實(shí)現(xiàn). 在此過(guò)程中遇到的很現(xiàn)實(shí)的問(wèn)題是: 1. 當(dāng)模糊半徑 (radius)變大后會(huì)直接出現(xiàn)計(jì)算性能問(wèn)題. 2. ScriptIntrinsicBlur腳本模糊半徑不能大于25. 因此, 直接使用ScriptIntrinsicBlur不能得到模糊程度較高的圖片.

考慮到高斯模糊是計(jì)算周邊像素平均值,在模糊程度很高的情況下,逐點(diǎn)計(jì)算平均值從顯示效果上優(yōu)勢(shì)并不明顯.可以通過(guò)將圖片壓縮成小圖,計(jì)算小圖的高斯模糊, 再將小圖放大的方法來(lái)模擬大半徑高斯模糊的效果.

效果如圖:模糊前/模糊后

二 在低版本Android中通過(guò)Java實(shí)現(xiàn)高斯模糊

可以參考如下代碼實(shí)現(xiàn)

這種方式通過(guò)在Java層中直接實(shí)現(xiàn)高斯模糊算法.在大模糊半徑和大圖片情況下,性能會(huì)出現(xiàn)問(wèn)題.基本目前只作為對(duì)低版本Android客戶端的兼容性方案使用.

三 通過(guò)OpenGL直接實(shí)現(xiàn)

沒(méi)有具體實(shí)踐過(guò), 可以參考muzei壁紙的實(shí)現(xiàn), 無(wú)論從效果和實(shí)時(shí)性來(lái)講都是最好的. 但需要根據(jù)需求來(lái)看是否真的有這樣的實(shí)時(shí)性要求. 這種方式從顯示效果上會(huì)優(yōu)于第一種方法,甚至可以達(dá)到漸變的效果.但這些計(jì)算都是以耗電作為代價(jià)的. 作為L(zhǎng)auncher這種系統(tǒng)級(jí)別的應(yīng)用, 在顯示效果差異并不明顯的情況下, 建議綜合考慮耗電量, 以及內(nèi)存和計(jì)算性能的消耗.

如圖:

總結(jié)

以上是生活随笔為你收集整理的android 实现磨砂效果_Android 5.0 下毛玻璃(磨砂)效果如何实现?的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。