特殊节日单页面置灰

该方式只适用于iOS12之上,由于我们公司的项目都是iOS12之上的,所以不需要考虑iOS12之下的系统

创建一个view,不响应事件

class MLGrayView : UIView {    

    override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {

        return nil

    }

}

在基类中创建一个函数,用以后续调用:

func showGrayViewWithSuperView(_ superView:UIView) {

        let overlay = MLGrayView(frame: superView.bounds)

        overlay.isUserInteractionEnabled = false

        overlay.translatesAutoresizingMaskIntoConstraints = false

        overlay.backgroundColor = .gray

        overlay.layer.compositingFilter = "saturationBlendMode"

        superView.addSubview(overlay)

        superView.bringSubviewToFront(overlay)

    }

然后就可以在需要使用到的页面上使用这个了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • App页面置灰,本质是将彩色图像转换为灰度图像,本文提供两种方法实现,一种是App整体置灰,一种是单个页面置灰,可...
    i_苏阅读 8,504评论 0 3
  • 产品让研究一下特殊时间的黑白画面的模式, 本以为会很复杂, 搜了一下, 找到一些很好的方案, 简单易懂易用。分享记...
    Kakarot001阅读 2,256评论 0 1
  • 1、改变 UITextField 占位文字 颜色和去掉底部白框 [_userName setValue:[UICo...
    i_MT阅读 4,709评论 0 2
  • // //UIView.h //ZMHeaderFile // //CreatedbyZengZhimingon2...
    歐陽公子阅读 4,330评论 3 0
  • UIView - 视图 UIView为屏幕上的矩形区域管理内容的对象,一般称为视图(以下称为视图)。视图是应用程序...
    寻心_0a46阅读 3,828评论 0 1

友情链接更多精彩内容