androidview添加阴影_ios13去除壁纸阴影

androidview添加阴影_ios13去除壁纸阴影ios给 UIView 添加阴影

大家好,又见面了,我是你们的朋友全栈君。

给 UIView 添加阴影有时候明明添加了阴影可是在 UI 上却没显示出来,这里总结几条阴影不显示的原因:

1. 是否设置了 masksToBounds 为 YES,设置为 masksToBounds=YES,阴影不显示;
2. 设置阴影时 view 的 frame 是否为 CGRectZero,如果是,即使设置阴影后修改 frame 不为 CGRectZero 时,也不会显示阴影;
3. 使用自动布局时往往会遇到 frame 为 CGRectZero 时设置阴影无效,这时可以使用 `layoutIfNeeded` 方法;

【通过 layer 设置阴影】
// 阴影的颜色
self.imageView.layer.shadowColor = [UIColor blackColor].CGColor;
self.imageView.layer.shadowOpacity = 0.8;
// 阴影的圆角
self.imageView.layer.shadowRadius = 1;
// 阴影偏离的位置 (100, 50) x 方向偏离 100,y 偏离 50 正向,如果是负数正好为相反的方向
self.imageView.layer.shadowOffset = CGSizeMake(3, 4);

【通过 shadowPath 设置阴影】

通过这种方式设置的阴影可以自定义阴影的形状,它会使用在 layer 上设置的属性,比如 shadowRadius。

UIEdgeInsets edges = UIEdgeInsetsMake(15, 10, 15, 10);
UIBezierPath *path = [UIBezierPath bezierPathWithRect:CGRectMake(-edges.left, -edges.top, CGRectGetWidth(self.imageView.frame) + edges.left + edges.right, CGRectGetHeight(self.imageView.frame) + edges.top + edges.bottom)];
self.imageView.layer.shadowPath = path.CGPath;

转载于:https://my.oschina.net/u/2345393/blog/1924246

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107373.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • IDEA和MySQL数据库建立连接

    IDEA和MySQL数据库建立连接IDEA和MySQL数据库建立连接操作步骤如下:1.打开IDEA软件,点击顶部导航栏的View–>ToolWindows–>Database(或者直接点击右侧边上的Database),在右侧打开的Database框里,点击左上角的+–>DataSource–>MySQL。2.填入自己的MySQL数据库信息(账户默认root,密码是自己设置的),Database里面填写要连接的数据库名称,填好后点击下方的TestConnection。3.这

    2022年7月19日
    36
  • PHP获取指定月份的第一天开始和最后一天结束的时间戳函数

    一个php获取月中第一天和最后一天的函数,网上搜集的函数,不过这个函数感觉实现的有点繁琐了.本篇文章推荐阅读里也有一篇同样的函数,大家也可以看一下.推荐:http://www.cnblogs.com

    2021年12月24日
    47
  • H3C交换机常用命令大全

    H3C交换机常用命令大全一.用户配置:system-view[H3C]superpasswordH3C设置用户分级密码[H3C]undosuperpassword删除用户分级密码[H3C]localuserbigheap1234561Web网管用户设置,1(缺省)为管理级用户,缺省admin,admin[H3C]undolocaluserbigheap删…

    2022年6月20日
    37
  • 外国asp空间常见问题解答[通俗易懂]

    外国asp空间常见问题解答[通俗易懂]现在国内的免费asp空间越来越少,即使是收费的,也有备案的麻烦。所以国外的空间就成了很多人的选择,但是选择国外的空间,往往会有数据库连接、乱码和时差的问题。这里,我参考各位高人的文章,在本地用虚拟机运行英文版WindowsServer2003企业版试验,成功地解决了这些问题,现在就为大家一一道来。数据库连接问题这里我只测试了Access数据库。症状如下:在本地使用数据库很正

    2025年7月17日
    15
  • 计算机高配表要表格,为何高配电脑还会卡? 因为你没选择FreeSync套装

    计算机高配表要表格,为何高配电脑还会卡? 因为你没选择FreeSync套装可能有很多玩家在网络对战游戏中都遇到如此状况:电脑配置并不低,但游戏画面依然不够顺滑,不但经常卡顿,而且明明先瞄准敌人开枪,敌人没死而自己被秒掉。其实,这并不是因为玩家枪法太菜,问题在很大程度上出在玩家选择的显卡与显示器上。那到底玩家的显卡和显示器上到底有什么问题?让我们为大家分析一下吧。高配电脑可以提供高帧速,但并不一定无卡顿高配置的电脑当然能提供强劲的性能,在游戏中自然可以提供很高的帧速。但为…

    2022年6月1日
    37
  • oracle启动时必须启动哪两个服务_富士康的领导

    oracle启动时必须启动哪两个服务_富士康的领导七个服务的含义分别为:1.OracleORCLVSSWriterService:Oracle卷映射拷贝写入服务,VSS(VolumeShadowCopyService)能够让存储基础设备(比如磁盘,阵列等)创建高保真的时间点映像,即映射拷贝(shadowcopy)。它可以在多卷或者单个卷上创建映射拷贝,同时不会影响到系统的系统能。(非必须启动)2.OracleDBConsole…

    2025年5月26日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号