Swift - @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))
    }

}

person SNos    schedule 10.08.2016    source источник


Ответы (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))
    }
}

Результат:

введите здесь описание изображения

введите здесь описание изображения

person Krunal    schedule 01.11.2017