UIView半透明悬浮效果

当在原有视图上需要弹出一个新的视图,并且突出显示时,我们可以新建一个和屏幕大小相同的UIView,并且将UIView的背景颜色设置为灰色,需要突出显示的控件背景设为白色(或其他醒目颜色)。同时,将UIView设置具有透明度,需要突出显示的控件不透明。这样一来就可以达到,半透明悬浮显示控件的酷炫效果。
实际写代码过程中会发现,如果直接修改UIView的alpha,效果并不理想。

self.view.alpha = 0.5;
self.view.backgroundColor = [[UIColor grayColor];

这样做确实可以修改UIView的透明度,但是顶层视图的alpha会影响到底层所有视图的alpha值,所以如果继续尝试添加控件,会发现新添加的控件也是半透明的(即使我们并没有人为的如此设置)。

有一个简单的解决办法,在设置顶层视图透明度时候,不直接修改view的alpha值,而是通过修改颜色达到类似的目的

self.view.backgroundColor = [[UIColor grayColor] colorWithAlphaComponent:0.5];

这样生成的顶部UIView,不仅也是灰色半透明,其底层视图依然可以保持不透明状态。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值