条形按钮项目未与图像一起出现
Bar button item not appearing with image
我正在尝试将个人资料图片设置为栏按钮项。图片来自URL使用SDWebImage。当我 运行 应用程序时,该项目显示为白色框,所有其他右侧栏按钮项目向左移动。有人知道我做错了什么吗?或者有更好的方法吗?
@IBOutlet weak var myAvatarButton: UIBarButtonItem! {
didSet {
// call in "my user"
guard let userImageURL = CurrentUser.shared.imageURL else {
return
}
let avatarImage = UIImageView()
avatarImage.frame = CGRect(x: 0, y: 0, width: 30, height: 30)
avatarImage.sd_setImage(with: userImageURL, placeholderImage: #imageLiteral(resourceName: "placeholder"), options: [.refreshCached, .retryFailed], completed: nil)
myAvatarButton.image = avatarImage.image
}
}
第一张图是模拟器里的,第二张是故事板里的。
使用完成块。您是直接将图片设置为按钮图片,但下载图片需要时间。
avatarImage.sd_setImage(with: userImageURL, placeholderImage: #imageLiteral(resourceName: "placeholder"), options: [.refreshCached, .retryFailed]) { (image, error, type, url) in
if let image = image {
myAvatarButton.image = image
}
}
我正在尝试将个人资料图片设置为栏按钮项。图片来自URL使用SDWebImage。当我 运行 应用程序时,该项目显示为白色框,所有其他右侧栏按钮项目向左移动。有人知道我做错了什么吗?或者有更好的方法吗?
@IBOutlet weak var myAvatarButton: UIBarButtonItem! {
didSet {
// call in "my user"
guard let userImageURL = CurrentUser.shared.imageURL else {
return
}
let avatarImage = UIImageView()
avatarImage.frame = CGRect(x: 0, y: 0, width: 30, height: 30)
avatarImage.sd_setImage(with: userImageURL, placeholderImage: #imageLiteral(resourceName: "placeholder"), options: [.refreshCached, .retryFailed], completed: nil)
myAvatarButton.image = avatarImage.image
}
}
第一张图是模拟器里的,第二张是故事板里的。
使用完成块。您是直接将图片设置为按钮图片,但下载图片需要时间。
avatarImage.sd_setImage(with: userImageURL, placeholderImage: #imageLiteral(resourceName: "placeholder"), options: [.refreshCached, .retryFailed]) { (image, error, type, url) in
if let image = image {
myAvatarButton.image = image
}
}