我已经定义了两种不同的观点,如 –
第一种方法:
let containerView = UIView(frame: CGRect(x: 0.0,y: 0.0,width: 375.0,height: 667.0)) containerView.backgroundColor = UIColor.redColor()
我可以看到矩形.
第二种方法:
let view = UIView() view.frame = CGRect(x: 0,y: 0,width: 200,height: 200) view.backgroundColor = UIColor.blueColor()
我看到一些像输出这样的日志消息.
为什么两者都提供不同的产出?
Web中的一些教程使用第一种方法,第二种方法使用第二种方法.
这是图片.
解决方法
有时,游乐场不能按预期工作.可能是因为两个视图都没有定义超级视图.
在真正的应用程序中它工作正常
override func viewDidLoad() { super.viewDidLoad() let containerView = UIView(frame: CGRect(x: 0.0,width: 37.5,height: 66.7)) containerView.backgroundColor = UIColor.redColor() view.addSubview(containerView) let myView = UIView() myView.frame = CGRect(x: 0,y: 290,height: 200) myView.backgroundColor = UIColor.blueColor() view.addSubview(myView) }
我在playgorund中尝试了这段代码:
let cv = UIView(frame: CGRect(x: 0.0,height: 667.0)) cv.backgroundColor = UIColor.redColor() let v1 = UIView(frame: CGRect(x: 0.0,width: 30.0,height: 60.0)) v1.backgroundColor = UIColor.yellowColor() cv.addSubview(v1) let v2 = UIView() v2.frame = CGRect(x: 0,y: 200,height: 60.0) v2.backgroundColor = UIColor.blueColor() cv.addSubview(v2)
它适用于两个初始化程序.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。