2014-04-24 47 views
1

我对此进行了搜索,但是我没有找到我的问题的确切解决方案,所有制作模糊效果的答案都表明制作整个画面上,但模糊的效果,我想模糊效果的东西看起来像下面的图片如何在iOS中制作这种效果,模糊效果越来越精益

enter image description here

图像模糊效果是在底部,要在

,增精简到下侧

任何人都可以知道如何做到这一点,任何想法或示例代码... :)

+0

使用渐变色与alpha分量。 –

+0

@HimanshuJoshi你可以发表一些示例代码如何实现这个...? –

+0

简单的方法是创建一个图像并将其应用于最终,您必须用其他视图覆盖该视图。将您从线路代码中拯救出来。否则你可以去上面提到的方法。 – nikhil84

回答

3

使用CAGradientLayer

UIColor *theColor = [[UIColor alloc] initWithRed:146.0/255.0 green:146.0/255.0 blue:146.0/255.0 alpha:1]; 

CAGradientLayer *gradientLayer = [CAGradientLayer layer]; 

CGRect gradientLayerFrame = theView.frame; 
gradientLayerFrame.origin.x = 0; 
gradientLayerFrame.origin.y = 0; 
gradientLayer.frame = gradientLayerFrame; 

//build the colors array for the gradient 
NSArray *colors = [NSArray arrayWithObjects: 
        (id)[theColor CGColor], 
        (id)[[theColor colorWithAlphaComponent:0.9f] CGColor], 
        (id)[[theColor colorWithAlphaComponent:0.6f] CGColor], 
        (id)[[theColor colorWithAlphaComponent:0.4f] CGColor], 
        (id)[[theColor colorWithAlphaComponent:0.3f] CGColor], 
        (id)[[theColor colorWithAlphaComponent:0.1f] CGColor], 
        (id)[[UIColor clearColor] CGColor], 
        nil]; 

gradientLayer.colors = colors; 

[yourView.layer insertSublayer:gradientLayer atIndex:0]; 

这段代码的迅速版here

+0

thnx我会尝试它...... :) –

+0

什么是'theColor'你在数组中使用 –

+0

theColor是'UIColor'的实例 –