2015-04-04 111 views
0

我試圖創建UIView的模糊效果,以及我想補充活力的影響,使我能突出我的按鈕並使用它們。我試圖通過蘋果文檔和一些教程學習,但無法進入以下步驟,我正在做的是正確的。模糊效果iOS8上

步驟1.我創建將其添加爲子視圖呈現視圖,以便它看起來模糊的模糊看法。 第2步。然後,我爲模糊效果創建一個活力視圖並將其添加到blurview的contentview。

,但我無法得到的模糊效果,誰能幫助我瞭解 1.如果下面的步驟是正確的。 2.如果沒有應該怎麼理想的順序。 3.如何突出顯示這些按鈕並使用它們。 (我也附加了我的故事板快照)。

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 

    UIBlurEffect *blurEffect= [UIBlurEffect effectWithStyle:UIBlurEffectStyleExtraLight]; 
    UIVisualEffectView *blurView = [[UIVisualEffectView alloc] initWithEffect:blurEffect]; 
    [blurView setUserInteractionEnabled:false]; 
    [self.view addSubview:blurView]; 


    UIVibrancyEffect *vibrancyEffect = [UIVibrancyEffect effectForBlurEffect:blurEffect]; 
    UIVisualEffectView *vibrancyView = [[UIVisualEffectView alloc] initWithEffect:vibrancyEffect]; 
    [vibrancyView setTranslatesAutoresizingMaskIntoConstraints:NO]; 
    //[vibrancyView.contentView addSubview:s]; 
    [blurView.contentView addSubview:vibrancyView]; 



} 

enter image description here

回答

1

你的代碼的主要問題是你忽視了讓你的模糊視圖任何大小。因此它的大小爲零。因此你不會看到它做任何事情;它實際上是隱形的。它可以模糊的最多是它後面的一個像素,而且你不可能注意到這一點。

1

你沒有設置你的blurView和vibrancyView框架。

blurView.frame = self.view.frame; 
vibrancyView.frame = self.view.frame; 
+1

當然沒有。他不想讓模糊視圖的框架與其超級視圖的_frame_相同;他希望將模糊視圖的框架與其超級視圖的_bounds_相同。 (設置它一樣的上海華盈的框架_might_工作,但只有在框架和範圍恰好是一樣的,這是通常情況並非如此。) – matt 2015-04-04 22:16:01

+1

@馬特現在我明白我的錯誤。我沒有注意到幀大小的要求,只是從xCode粘貼。謝謝 – 2015-04-04 22:18:01