【发布时间】:2019-07-15 04:59:42
【问题描述】:
我创建了一个继承 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 = 屏幕中间,width = 与屏幕一样宽, 身高 = 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)
}
}
我发现没有创建视图。
【问题讨论】:
-
你的意思是视图在屏幕上不可见?您需要先将其添加到视图层次结构中。
-
是的,视图不可见。 @pckill
-
你在使用xib吗?你需要先加载它
-
不,@Shruti 我不是。
-
您能否检查您的视图是否在前景中,或者它可能隐藏在任何其他子视图后面。您可以使用调试器检查视图层次结构
标签: ios swift uiview addsubview