swift transform遇到问题

前言:最近开始着手使用swift语言,遇到一些坑,特此记录

  • 问题如下
    • 中间菱形通过UIView旋转45度得到,但是右上右下边边很明显的看到变细(此图是通过Debug View Hierarchy放大看到),原以为是阴影设置,但是经过测试发现不是,问题依然存在
fileprivate let squareView: UIView = {
        let squareView = UIView()
        squareView.layer.borderColor = UIColor.black.cgColor
        squareView.layer.borderWidth = 2.0
        squareView.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi / 4))
        return squareView
    }()
问题截图.jpg
  • 目前的解决方案
fileprivate let squareView: UIView = {
        let squareView = UIView()
        return squareView
    }()
let path = CGMutablePath()
path.addRect(squareView.bounds)
squareLayer.path = path
squareView.layer.addSublayer(squareLayer)
squareView.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi / 4))
现在.jpg

虽然通过添加layer方式问题得到解决,但是始终不明白直接设置layer边框再旋转,边框变细的原因,等之后搞明白了,再来更新O(∩_∩)O哈哈~

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

推荐阅读更多精彩内容

  • 转载:http://www.jianshu.com/p/32fcadd12108 每个UIView有一个伙伴称为l...
    F麦子阅读 6,337评论 0 13
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥iOS动画全貌。在这里你可以看...
    F麦子阅读 5,149评论 5 13
  • 每个UIView有一个伙伴称为layer,一个CALayer。UIView实际上并没有把自己画到屏幕上;它绘制本身...
    shenzhenboy阅读 3,161评论 0 17
  • 在iOS中随处都可以看到绚丽的动画效果,实现这些动画的过程并不复杂,今天将带大家一窥ios动画全貌。在这里你可以看...
    每天刷两次牙阅读 8,585评论 6 30
  • 记录下极光推送的集成点滴 初始化工作 监听极光是否登录成功,只有登录成功才能注册别名 需要注意的地方
    AgoniNemo阅读 642评论 0 0