【发布时间】:2016-01-23 15:48:11
【问题描述】:
我使用 iOS 9 (Swift),在一个视图中显示一组八个 imageView,我添加了约束来设置 imageView 的位置。
每个 ImageView 从资源文件中加载一个图像,该文件已手动设置为故事板中的每个图像。
一切正常,现在我想在运行时将随机资产设置为 imageViews...
var images = ["T","B","J","R","R2","I","M","RL"]
var randomImages = images
var indexCount = UInt32(images.count)
for imageView in TopImages{
let index:Int = Int(arc4random_uniform(indexCount))
imageView.image = UIImage(named: randomImages[index])
randomImages.removeAtIndex(index)
indexCount -= 1
}
当此代码运行时,imageViews 的位置与我在故事板中设计的位置不同...似乎当我以编程方式设置 ImageView.image = UIImage(...) 时,我缺少约束。
是否可以在运行时更改资产名称而不执行 UIImage 的新实例?如果不可能...任何人都知道任何解决方法来实现我以编程方式加载之前添加并定位到故事板的随机图像的目标?
谢谢!!
【问题讨论】:
-
你能告诉我们你的故事板和自动布局约束吗?
-
如何初始化 UIImage 视图?
-
不,我没有在代码中初始化 imageView。在运行时影响帖子中显示的该片段中的图像视图的唯一代码。如果我评论这一行: imageView.image = UIImage(named: randomImages[index]) 图像被正确定位...
标签: ios swift uiimage ios9 ios-autolayout