【发布时间】:2014-08-05 13:49:39
【问题描述】:
当我像这样将图像插入到我的视图中时,它可以工作:
func loadSomeImage() {
var imageView = UIImageView(frame: CGRectMake(100, 150, 150, 150))
var image = UIImage(named: "myImage.jpg")
imageView.image = image
self.view.addSubview(imageView)
}
我对这段代码的问题是,ImageView 没有显示在 Interface Builder 中。
然而,当我编写这段代码时,我得到一个错误:
@IBOutlet weak var imageView: UIImageView
func loadSomeImage() {
self.imageView = UIImageView(frame: CGRectMake(100, 150, 150, 150))
var image = UIImage(named: "myImage.jpg")
imageView.image = image
self.view.addSubview(imageView)
}
致命错误:在展开可选值时意外发现 nil
这是为什么呢?我可以插入一个显示在 Interface Builder 中但有我自己的代码实现的图像来更改属性检查器无法更改的某些功能吗?
感谢您的帮助!
【问题讨论】:
-
imageView是从xib连接到UIImageView的吗?
-
是的。如果你的意思是实例imageView连接到Interface Builder中的UIImageView类?!
-
是的,我是这个意思。首先不要这样做:self.imageView = UIImageView(frame: CGRectMake(100, 150, 150, 150)),因为你的imageView已经创建好了,如果你想改变它的框架,那么修改它:CGRect lFrame = CGRectMake(100, 150, 150, 150); self.imageView.frame = lFrame.
-
当你说“我对这段代码的问题是,ImageView 没有显示在 Interface Builder 中。”你确定吗 ?尝试更改它的背景颜色,也许 imageView 已添加到视图中,但由于未加载图像,因此它是不可见的。 imageView.backgroundColor = UIColor.grayColor();
标签: ios uiimageview uiimage swift interface-builder