Swift: 添加到新视图时,图像没有出现在 ImageView 中
Swift: Image does not appear in the ImageView when added to a new view
对于我正在开发的应用程序,配置文件页面顶部有一个水平滚动条,其中有 3 个视图,每个视图都跨越设备的宽度。一个视图是个人资料图片,另一个是详细信息,另一个是社交链接。
我遇到的问题是,当我创建一个名为 profileImage
的 UIImageView
,然后将用户个人资料图像分配给此视图时,在我添加此滚动视图之前一切正常。
然后我创建了这个滚动视图,profileImage
位于 firstView
,滚动的第一个视图。但是图像永远不会出现,这不仅仅是图像的问题,因为我也尝试在资产中添加默认图像。
var profileImage: UIImageView!
下面是用于创建幻灯片 firstView
并将图像添加到图像视图的代码块。
let firstView = UIView(frame: CGRectMake(scrollView.frame.origin.x, scrollView.frame.origin.y, scrollView.frame.size.width, scrollView.frame.size.height))
firstView.backgroundColor = Colours.blue
scrollView.addSubview(firstView)
var img = UIImage(named: "default_image")
profileImage = UIImageView(image: img!)
profileImage.contentMode = UIViewContentMode.ScaleToFill
if let imageUrl = user.profilePictureUrl {
profileImage.hnk_setImageFromURL(imageUrl)
println("THIS IS IMAGE URL: \(imageUrl)")
}
profileImage = UIImageView(frame: CGRectMake((firstView.bounds.size.width - profileImage.frame.size.width) / 2.0, 10, 80, 80))
firstView.addSubview(profileImage)
firstView.bringSubviewToFront(profileImage)
imageUrl
出现,我知道我很容易漏掉一些东西。另外我要注意 UIImageView
和 UIScrollView
不是 IBOutlet
而是以编程方式创建的。
您已经实例化了两次同名的 UIImageView 对象"profileImage";所以你的第一个 profileImage 被下一个 profileImage 覆盖。在最后第三行注释并设置框架:
profileImage.frame = CGRectMake(x,x,x,x)
对于我正在开发的应用程序,配置文件页面顶部有一个水平滚动条,其中有 3 个视图,每个视图都跨越设备的宽度。一个视图是个人资料图片,另一个是详细信息,另一个是社交链接。
我遇到的问题是,当我创建一个名为 profileImage
的 UIImageView
,然后将用户个人资料图像分配给此视图时,在我添加此滚动视图之前一切正常。
然后我创建了这个滚动视图,profileImage
位于 firstView
,滚动的第一个视图。但是图像永远不会出现,这不仅仅是图像的问题,因为我也尝试在资产中添加默认图像。
var profileImage: UIImageView!
下面是用于创建幻灯片 firstView
并将图像添加到图像视图的代码块。
let firstView = UIView(frame: CGRectMake(scrollView.frame.origin.x, scrollView.frame.origin.y, scrollView.frame.size.width, scrollView.frame.size.height))
firstView.backgroundColor = Colours.blue
scrollView.addSubview(firstView)
var img = UIImage(named: "default_image")
profileImage = UIImageView(image: img!)
profileImage.contentMode = UIViewContentMode.ScaleToFill
if let imageUrl = user.profilePictureUrl {
profileImage.hnk_setImageFromURL(imageUrl)
println("THIS IS IMAGE URL: \(imageUrl)")
}
profileImage = UIImageView(frame: CGRectMake((firstView.bounds.size.width - profileImage.frame.size.width) / 2.0, 10, 80, 80))
firstView.addSubview(profileImage)
firstView.bringSubviewToFront(profileImage)
imageUrl
出现,我知道我很容易漏掉一些东西。另外我要注意 UIImageView
和 UIScrollView
不是 IBOutlet
而是以编程方式创建的。
您已经实例化了两次同名的 UIImageView 对象"profileImage";所以你的第一个 profileImage 被下一个 profileImage 覆盖。在最后第三行注释并设置框架:
profileImage.frame = CGRectMake(x,x,x,x)