我正在尝试旋转UILabel(在故事板上创建)UIView,但是当我尝试使用CGAffineTransform(rotationAngle :)时,它正在崩溃应用程序的nil值。 是因为我正在使用故事板吗?
@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)
答案 0 :(得分:0)
您的标签prevPitch
未与故事板项目相关联
代码左侧边栏上有一个加号而不是一个圆圈。
你应该重新连接它。也许你在重命名时丢失了这个连接
答案 1 :(得分:0)
我设法通过使用ViewController而不是UIView添加标签来解决这个问题。
在ViewController上使用prevPitch.transform = CGAffineTransform(rotationAngle: 3.14)
并且它可以工作。