Swift - @IBDesignable - 在Storyboard中没有显示旋转

时间:2016-08-10 13:10:26

标签: ios swift uilabel transform ibdesignable

为什么transform rotation未在故事板中显示/预览?它在应用程序中工作正常。我的@IBDesignable类中有其他属性可以正常工作。

我怎样才能做到这一点?

@IBDesignable
class CustomUILabel: UILabel {

    @IBInspectable var label_Rotation: Double = 0 {
        didSet {

            rotateLabel(label_Rotation)

        }
    }

    func rotateLabel(labelRotation: Double)  {
        self.transform = CGAffineTransformMakeRotation(CGFloat(M_PI_2 + labelRotation))
    }

}

1 个答案:

答案 0 :(得分:1)

这似乎与以下结果一致(可能是你所期望的):

注意:我在Swift 4中有这个

@IBDesignable
class CustomUILabel: UILabel {

    @IBInspectable var label_Rotation: Double = 0 {
        didSet {
            rotateLabel(labelRotation: label_Rotation)
            self.layoutIfNeeded()
        }
    }

    func rotateLabel(labelRotation: Double)  {
        self.transform = CGAffineTransform(rotationAngle: CGFloat((Double.pi * 2) + labelRotation))
    }
}

<强>结果:

enter image description here

enter image description here