我正在尝试以编程方式创建自定义视图,以显示针对错误情况的错误消息。以下是ViewController的外观:

// init
var titleParagraphStyle = NSMutableParagraphStyle()
titleParagraphStyle.lineSpacing = 40.0
titleParagraphStyle.lineBreakMode = NSLineBreakMode.ByWordWrapping

let titleString = NSMutableAttributedString(
string: "Oops! Error.",
attributes: [ // Some attributes
    ]
)

var errorView = UIView()
errorView.frame = self.view.bounds
errorView.backgroundColor = UIColor.redColor()

var errorLabel = UILabel()
errorLabel.textAlignment = .Center
errorLabel.attributedText = titleString
errorLabel.lineBreakMode = .ByWordWrapping
errorLabel.backgroundColor = UIColor.blueColor()
errorLabel.textColor = UIColor.greenColor()

errorView.addSubview(errorLabel)
self.errorView = errorView

// usage
if(errorCondition) {
    self.view = self.errorView
}


我只能看到一个红色的矩形,这意味着只有errorView是可见的。我究竟做错了什么?

最佳答案

我认为您的UILabel需要一个框架。

关于ios - UILabel在动态创建的UIView上不可见,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32104591/

10-11 15:28