在UIView下旋转UILabel

时间:2017-03-22 18:14:11

标签: ios swift uikit uilabel rotatetransform

我正在尝试旋转UILabel(在故事板上创建)UIView,但是当我尝试使用CGAffineTransform(rotationAngle :)时,它正在崩溃应用程序的nil值。 是因为我正在使用故事板吗?

enter image description here

    @IBDesignable
    class AnalogView: UIView {

        @IBOutlet var prevPitch:UILabel!
        @IBOutlet var currectPitch:UILabel!
        @IBOutlet var nextPitch:UILabel!

        fileprivate let thickHorizontalLayer = CAShapeLayer()
        fileprivate let thinHorizontalLayer = CAShapeLayer()

        fileprivate let roundThinLayer = CAShapeLayer(layer: self)
        fileprivate let roundThickLayer = CAShapeLayer(layer: self)

        @IBInspectable var thickYCoord: CGFloat = 50.0
        @IBInspectable var thinYCoord: CGFloat = 52.5



        @IBInspectable var counterColor: UIColor = UIColor.orange

        override init(frame: CGRect = .zero) {
            super.init(frame: frame)



            configure()
        }

        required init?(coder aDecoder: NSCoder) {
            super.init(coder: aDecoder)

        }

        private func configure() {


            prevPitch.transform = CGAffineTransform(rotationAngle: 3.14)

2 个答案:

答案 0 :(得分:0)

您的标签prevPitch未与故事板项目相关联

代码左侧边栏上有一个加号而不是一个圆圈。

你应该重新连接它。也许你在重命名时丢失了这个连接

答案 1 :(得分:0)

我设法通过使用ViewController而不是UIView添加标签来解决这个问题。 在ViewController上使用prevPitch.transform = CGAffineTransform(rotationAngle: 3.14)并且它可以工作。