半透明黑色背景的实现

类似下图这样一个半透明效果的实现:


image1.png

起因:

我今天在推酷上面闲逛的时候,看到了这样一篇文章用 Swift 编写面向协议的视图,里面介绍的是一个颤动的效果,分别采用直接实现、category实现以及protocol extension实现,来表现swift面向协议的强大,推荐大家仔细看看。

在文章的末尾,附有一个链接,是透明视图控制器及背景遮罩,我点开看了一下,是一个采用protocol extension实现的类似图一的半透明的实现;只不过是swift的。

然后我仔细回想了一下,类似这种效果的需求在开发中不少,但是每次我实现都是自定义一个view然后用动画效果实现,现在想想这样不但繁琐,而且很low,有木有。

然后想想上面的那个实现,我把它翻译成OC的怎么样,能不能使用,OC里面是没有protocol extension的,那我就直接用category实现,至少比每次实现都重写方便。

then,here is the result. DimBackground-OC里面很简单,使用的时候只需要导入这两个文件,然后使用即可。

image2.png

但是需要注意的是,要present出来的那个界面,这个Presention必须设置为Over Current Context,这个默认的不是这个值,如果不修改的话,会发现最终显示出来的是黑色的背景,看不到背后的界面。

image3.png

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,276评论 4 61
  • 是你吗? 你真的回来了吗! 像往日的每个周一,我匆匆走在上班的路上,不悲不喜,现在的生活与我,像极了白水,无色无味...
    深院梧桐阅读 301评论 0 0
  • 一个人 一句话 一辈子
    路况不好你小心阅读 218评论 0 1
  • 很久以前的歌听到的大部分都是 王侯将相的英雄事迹 到后来听到的大部分都是 痴男怨女的齐秦故事 感谢毛不易让我的音乐...
    fluenc阅读 672评论 0 1
  • 三十天连续写作训练转眼就将结束了。刚开始参加训练的时候,就想着在儿子中考冲刺阶段能做点有意义的事情,和他一起拼搏,...
    兔娘阅读 295评论 3 2