有这么一个关于用户体验的需求,我想把一个自定义的View显示的时候达到从中间向左右两侧alpha值逐渐减小(即透明度逐渐增加)的效果。类似下图这种文字消失的感觉:
这里是MarqueeLabel类库中实现的效果,其原理大概是利用了CALayer
中的mask遮罩
,但是自己从来没有接触过,求大神讲解改效果是如何实现的。
有这么一个关于用户体验的需求,我想把一个自定义的View显示的时候达到从中间向左右两侧alpha值逐渐减小(即透明度逐渐增加)的效果。类似下图这种文字消失的感觉:
这里是MarqueeLabel类库中实现的效果,其原理大概是利用了CALayer
中的mask遮罩
,但是自己从来没有接触过,求大神讲解改效果是如何实现的。
2 回答1k 阅读
1 回答1.1k 阅读✓ 已解决
1 回答2.7k 阅读
1 回答1.5k 阅读
1 回答1.4k 阅读
1.7k 阅读
1 回答1.1k 阅读
用一个:
CAGradientLayer()
设置好渐变内容及方向注意:渐变头尾都是
clearColor()
,中间可以随意,不透明即可。这个例子中,可以是这样:
位置:
[0, 0.05, 1]
颜色:
[clearColor, whiteColor, whiteColor]
起始点:
[0,0.5] -> [1,0.5]
表示自定的UILabel或者View,添加设置
layer.mask = gradientLayer
即可