1

我想實現我的UIViewController的過渡,其中是非常簡單地縮小和模糊,以便它坐落在背景中褪色。我已經看了很多解決方案,但我無法找到任何具體模糊的東西。自定義UIViewController轉換與模糊

目前我只是玩屏幕的父視圖控制器和動畫的孩子。

應用程序,例如Tweetbot 3和Pinterest的是顯着的人裏面做這個,看截圖這裏,正是我的意思:

enter image description here

我與它掙扎順利模糊了。有關如何實現這一效果的任何建議?

回答

1

的iOS 7解決方法:

你可以的UIImageView顯示它和其他UIViews的榜首位。在過去,我在CALayer中使用了renderInContext。

UIGraphicsBeginImageContext(self.view.bounds.size); 
[self.view drawViewHierarchyInRect:self.view.bounds]; 
UIImage *blurImg = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

一旦你捕獲UIView的截屏,應用模糊效果。不幸的是,目前還沒有公共API可用於模糊效果,但Apple在示例代碼中提供了示例實現。這是UIImage的一個類別。請在Xcode文檔中搜索示例代碼。添加的UIImage類文件到您的項目後,您可以模糊的圖像是這樣的:

blurImg = [blurImg applyDarkEffect]; 

此前的iOS 7解決方法: https://github.com/tomsoft1/StackBluriOS

UIImage *blurImg = [originalImg stackBlur:radius]; 
+1

是啊,我已經看到了很多不同的解決方案,以模糊一個圖像,包括蘋果自己的代碼。不過,我碰到另一個問題。模糊UIImage時,模糊不會延伸到圖像邊界之外,這意味着您仍然會遇到困難。 –