Swift 设置阴影

简介: 阴影的设置是通过layer的shadow设置的,其中offset为阴影的偏移量,探索下offset是如何影响阴影显示的

阴影的设置是通过layer的shadow设置的,其中offset为阴影的偏移量,探索下offset是如何影响阴影显示的


定义6个按钮,分别表示width 和 height 从 5.0 至 -5.0的变化过程

整体效果如下:


image.png

阴影显示



根据效果图,可以得出如下结论


  • 当width 为正数时,shadow向右偏移,为负数时,shadow向左偏移
  • 当height为正数时,shadow向下偏移,为负数时,shadow向上偏移


阴影的设置代码如下


    fileprivate func setupShader(_ w: CGFloat, _ h: CGFloat, _ btn: UIButton){
        //设置阴影路径--避免离屏渲染
        let path = UIBezierPath(rect: btn.bounds)
        btn.layer.shadowPath = path.cgPath
        //设置阴影颜色
        btn.layer.shadowColor = UIColor.black.cgColor
        //设置透明度
        btn.layer.shadowOpacity = 0.5
        //设置阴影半径
        btn.layer.shadowRadius = 5.0
        //设置阴影偏移量
        btn.layer.shadowOffset = CGSize(width: w, height: h)
    }


相关文章
swift4.0 代码设置阴影
有的时候,项目中会用到阴影的效果,增加立体感。我们可以让设计师给出切图,用图片填充。我们还可以使用几句代码来实现简单的阴影效果。 实现效果图展示一: image.
1688 0
|
JSON 测试技术 数据处理
iOS-底层原理 35:组件化(一)方案
iOS-底层原理 35:组件化(一)方案
1857 0
iOS-底层原理 35:组件化(一)方案
手势代理 shouldBeRequiredToFailByGestureRecognizer 和 shouldRequireFailureOfGestureRecognizer 的区别
手势代理 shouldBeRequiredToFailByGestureRecognizer 和 shouldRequireFailureOfGestureRecognizer 的区别
689 10
|
机器学习/深度学习 缓存 Kubernetes
FastAPI(62)- FastAPI 部署在 Docker
FastAPI(62)- FastAPI 部署在 Docker
2029 0
FastAPI(62)- FastAPI 部署在 Docker
|
安全 算法 小程序
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
1115 28
【03】微信支付商户申请下户到配置完整流程-微信开放平台创建APP应用-填写上传基础资料-生成安卓证书-获取Apk签名-申请+配置完整流程-优雅草卓伊凡
|
机器学习/深度学习 人工智能 IDE
Cursor免费 GPT-4 IDE 工具的保姆级使用教程
本文介绍了Cursor这一基于人工智能技术的代码生成工具,包括其特点(利用自然语言处理和深度学习算法,可生成高质量代码,支持多种编程语言,能在多种操作系统上运行)及使用教程。教程内容涵盖下载(通过官网获取对应系统版本并安装)、初始化配置(如配置快捷键、AI指定语言,导入VS Code扩展,设置数据偏好,登录/注册)、安装插件(设置Cursor中文、配置gitee)、配置模型和Key(选择模型、配置密钥、自定义模型并进行测试)以及如何使用(打开提示词面板)等步骤。
14568 6
 Cursor免费 GPT-4 IDE 工具的保姆级使用教程
|
Swift
swift(MJRefresh框架)的使用
swift(MJRefresh框架)的使用
1280 0
iOS9新特性——堆叠视图UIStackView(二)
iOS9新特性——堆叠视图UIStackView
875 0
iOS9新特性——堆叠视图UIStackView(二)

热门文章

最新文章