使用Swift以编程方式加载图像

时间:2017-03-27 17:35:01

标签: ios swift uiimageview uiimage

我正在尝试动态加载和显示图像(使用Swift 3的UIImage) 但我似乎错过了一些东西(它不起作用!)可能很简单。

我正在使用UILabel进行文本描述,并且当图像存在时替换我想要加载和显示它们的描述。到目前为止我所拥有的是:

如果发现图像存在,请将图像与UIImage项目连接:

var rb1image: UIImage = UIImage(named: image1)!
var rb2image: UIImage = UIImage(named: image2)!

将UIImage项目与UIImageView项目连接:

var rb1img = UIImageView(image: rb1image)
var rb2img = UIImageView(image: rb2image)

使用UILabel位置和图像大小定位和调整UIImageView项目的大小:

rb1img.frame = CGRect(x: rbanslabel1.frame.origin.x, y: rbanslabel1.frame.origin.y, width: (rb1img.image?.size.width)!, height: (rb1img.image?.size.height)!)
rb2img.frame = CGRect(x: rbanslabel2.frame.origin.x, y: rbanslabel1.frame.origin.y, width: (rb1img.image?.size.width)!, height: (rb1img.image?.size.height)!)

标签显示正常但图像未显示。我希望图像出现在标签所在的位置。

有关我缺少什么的任何提示?在此先感谢: - )

---添加了完整的代码清单---

完整的代码是:

if exists(image1) {            
    var rb1image: UIImage = UIImage(named: image1)!
    var rb2image: UIImage = UIImage(named: image2)!
    var rb1img = UIImageView(image: rb1image)
    var rb2img = UIImageView(image: rb2image)            
    rb1img.frame = CGRect(x: rbanslabel1.frame.origin.x, y: rbanslabel1.frame.origin.y, width: (rb1img.image?.size.width)!, height: (rb1img.image?.size.height)!)
    rb2img.frame = CGRect(x: rbanslabel2.frame.origin.x, y: rbanslabel1.frame.origin.y, width: (rb1img.image?.size.width)!, height: (rb1img.image?.size.height)!)

昨晚我一定很累,因为今天在边栏上我看到了这个:How do you create a UIImage View Programmatically - Swift

我失踪了:

view.addSubview(rb1img)
view.addSubview(rb2img)

1 个答案:

答案 0 :(得分:0)

我不见了:

view.addSubview(rb1img)
view.addSubview(rb2img)

我在另一个问题的答案中找到了答案:How do you create a UIImage View Programmatically - Swift.

注意:我已经发布了解决方案,该解决方案是我对问题的编辑,因为它显示为未回答。