我创建了一个继承UIView的新类。当我创建新类的实例时,似乎未创建视图。 这是我的课程。
class QuestionView: UIView {
var metrics : [String : CGFloat] = [:]
override init(frame : CGRect){
super.init(frame: frame)
self.backgroundColor = UIColor.blue
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
在这里,我创建了此类的实例以具有以下值
x = 0, y =屏幕中间,宽度 =与屏幕一样宽, 高度 = 400
class mainView : UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
var questionView = QuestionView(frame: CGRect(x: 0, y: self.view.frame.height/2, width: self.view.frame.width, height: 400))
self.view.addSubView(questionView)
}
}
我没有创建任何视图。
答案 0 :(得分:0)
在mainView
方法的viewDidLoad
类中添加子视图(questionView)。
self.view.addSubview(questionView)
您还可以通过设置背景颜色来测试视图
questionView.backgroundColor = UIColor.red
答案 1 :(得分:0)
您应添加在Dim TOTALDAYS as Long
中以编程方式创建的所有视图,如下所示
viewDidLayoutSubView
答案 2 :(得分:0)
尝试使用以下代码将视图显示在前面,请使用bringSubviewToFront
函数。
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let questionView = QuestionView(frame: CGRect(x: 0, y: self.view.frame.height/2, width: self.view.frame.width, height: 400))
self.view.addSubview(questionView)
self.view.bringSubviewToFront(questionView)
}