我有一个从网址下载的图片。我想将该图像插入按钮并使用纵横比拟,以使图像看起来正确。我需要使用一个按钮,以便在选择时调用一个函数。我尝试了两种不同的显示图像的方法,但都没有效果:
起初我尝试设置背景图片。当我运行模拟器时,图像显示但不是aspectfit,它被拉伸并填充按钮的全部内容。
let url = URL(string: two2)
print("Url: \(url!)")
URLSession.shared.dataTask(with: url!, completionHandler: { (data, response, error) in
if error != nil{
print(error)
return
}
DispatchQueue.main.async {
let pim = UIImage(data: data!)
self.centernavlogo.imageView?.contentMode = .scaleAspectFit
self.centernavlogo.setBackgroundImage(pim, for: .normal)
}
}).resume()
然后我尝试了这个,我尝试设置按钮图像而不是bachground图像。当我运行模拟器时,按钮内部有一个小白框。我尝试更改色调颜色以查看按钮是否正在更改图片颜色,但这不起作用。
let url = URL(string: two2)
print("Url: \(url!)")
URLSession.shared.dataTask(with: url!, completionHandler: { (data, response, error) in
if error != nil{
print(error)
return
}
DispatchQueue.main.async {
let pim = UIImage(data: data!)
self.centernavlogo.imageView?.contentMode = .scaleAspectFit
self.centernavlogo.setImage(pim, for: .normal)
}
}).resume()
编辑:
centernavlogo是我在故事板中拖动到导航栏中心的按钮。
@IBOutlet weak var centernavlogo: UIButton!