zoukankan      html  css  js  c++  java
  • iOS开发之实现半透明蒙层背景效果[用于下拉菜单页和分享页]

    郝萌主倾心贡献。尊重作者的劳动成果,请勿转载。

    假设文章对您有所帮助。欢迎给作者捐赠。支持郝萌主,捐赠数额任意。重在心意^_^ 

    我要捐赠: 点击捐赠

    Cocos2d-X源代码下载:点我传送

    游戏官方下载:http://dwz.cn/RwTjl

    游戏视频预览:http://dwz.cn/RzHHd

    游戏开发博客:http://dwz.cn/RzJzI

    游戏源代码传送http://dwz.cn/Nret1


    如题,实现例如以下效果:


    背景为半透明的蒙层效果。点击后背景消失。


    实现蒙层的思路:

    1、初始化UIView作为背景层

    2、设置背景View的opaque属性和背景色

    3、加入UIGestureRecognizer以响应背景触摸操作

    4、在须要显示的地方加入背景view到window并改动背景色

    5、在须要隐藏的地方的地方移除view并改动背景色


    部分代码:

        //background init and tapped
        UIView *background = [[UIView alloc] initWithFrame:CGRectMake(0, 0, self.view.bounds.size.width, self.view.bounds.size.height)];
        background.backgroundColor = [UIColor colorWithWhite:0.0 alpha:0.0];
        background.opaque = NO;
        UIGestureRecognizer *gesture = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(backgroundTapped:)];
        [background addGestureRecognizer:gesture];
        self.shareBackGroundView = background;

        self.shareBackGroundView.backgroundColor = [UIColor colorWithWhite:0.0 alpha:0.3];
        
        AppDelegate *delegate = (AppDelegate *)[UIApplication sharedApplication].delegate;
        [delegate.window addSubview:self.shareBackGroundView];

        self.shareBackGroundView.backgroundColor = [UIColor colorWithWhite:0.0 alpha:0.0];
        [self.shareBackGroundView removeFromSuperview];

    郝萌主倾心贡献,尊重作者的劳动成果,请勿转载。

    假设文章对您有所帮助,欢迎给作者捐赠,支持郝萌主,捐赠数额任意,重在心意^_^ 

    我要捐赠: 点击捐赠

    Cocos2d-X源代码下载:点我传送

    游戏官方下载:http://dwz.cn/RwTjl

    游戏视频预览:http://dwz.cn/RzHHd

    游戏开发博客:http://dwz.cn/RzJzI

    游戏源代码传送http://dwz.cn/Nret1

  • 相关阅读:
    centos8 安装postresql12
    vs code 开启远程调试步骤
    node 版本管理器 nvs
    Vue I18n Vue.js 的国际化插件+elementUI的使用
    c#结构
    下拉菜单
    使用Convert 类和Parse方法将字符串转换为数值类型
    c# try..... catch
    c#迭代算法
    网页兼容各种浏览器
  • 原文地址:https://www.cnblogs.com/gavanwanggw/p/6756800.html
Copyright © 2011-2022 走看看