1.ui*******
蘋果在ios7.0之後,很多系統介面都使用了毛玻璃效果,增加了介面的美觀性,比如通知中心介面;其實在ios7.0(包括)之前還是有系統的類可以實現毛玻璃效果的, 就是 ui*******這個類
ios7.0
毛玻璃的樣式(列舉)
在ios8.0之後,蘋果新增了乙個類uivisualeffectview,通過這個類來實現毛玻璃效果與上面的ui*******一樣,而且效率也非常之高,使用也是非常簡單,幾行**搞定. uivisualeffectview是乙個抽象類,不能直接使用,需通過它下面的三個子類來實現(uiblureffect, uivisualeffevt, uivisualeffectview);
子類uiblureffect只有乙個類方法,用來快速建立乙個毛玻璃效果,引數是乙個列舉,用來設定毛玻璃的樣式,而uivisualeffectview則多了兩個屬性和兩個構造方法,用來快速將建立的毛玻璃新增到這個uivisualeffectview上.
特別注意: 這個類是ios8.0之後才適用, 所以如果專案要相容ios7.0的話, 還是要考慮其它的方法了.
ios8.0
毛玻璃的樣式(列舉)
uiblureffectstyleextralight,
uiblureffectstylelight,
uiblureffectstyledark
uiblureffect *effect = [uiblureffect effectwithstyle:uiblureffectstyledark];
uivisualeffectview *effectview = [[uivisualeffectview alloc] initwitheffect:effect];
effectview.frame = cgrectmake(0, 0, bgimgview.frame.size.width*0.5, bgimgview.frame.size.height);
[bgimgview addsubview:effectview];
3.coreimage:
ios5.0之後就出現了core image的api,core image的api被放在coreimage.framework庫中, 在ios和os x平台上,core image都提供了大量的濾鏡(filter),在os x上有120多種filter,而在ios上也有90多。
+(uiimage *)coreblurimage:(uiimage *)image withblurnumber:(cgfloat)blur
4.gpuimage (第三方)
除了蘋果官方提供的之外,第三方也有這方面處理的工具。乙個叫brad larson的老兄就搞了一套叫做gpuimage的開源庫。同樣的,裡面提供了很多filter。
gpuimagegaussianblurfilter * blurfilter = [[gpuimagegaussianblurfilter alloc] init];
blurfilter.blurradiusinpixels = 2.0;
uiimage * image = [uiimage imagenamed:@"***"];
uiimage *blurredimage = [blurfilter imagebyfilteringimage:image];
IOS毛玻璃效果
最近實習公司的ios專案中需要用到毛玻璃的效果 如下圖效果 嘗試用了幾個方法都不太滿意,最後終於找到了乙個比較好的解決方案。在ios8以上的機器中,我們可以利ios sdk中已經提供了的uiblureffect和uivisualview實現簡單毛玻璃的效果。實現的方法如下 其中visualeffec...
iOS 毛玻璃效果
注 新增毛玻璃的view要clearcolor,其他顏色會效果不明顯 分享兩種毛玻璃效果設定的方法,不需要任何三方東東,先看效果 原圖 方法一 ios8系統方法 方法二 下面是示例 objc view plain copy import viewcontroller.h inte ce viewco...
iOS開發中毛玻璃效果
毛玻璃 的ui 設計在手機開發中已經 非常熱門,在之前的 開發中 一般用到 github上fxblurview 封裝好的乙個view類 可以直接應用載入到控制項中,ios 8 後更新的 uiblureffect 類和 uivisualeffectview 類使這種特效應用更加便捷,高效。使用也非常簡...