我有一个代表用户头像的圆形按钮。通过单击此按钮,我调用ImagePicker,然后尝试将拾取的图像设置为UI按钮。
首先我这样做:
@IBAction func choseAvatar(_ sender: Any) {
let image = UIImagePickerController()
image.delegate = self
image.sourceType = UIImagePickerControllerSourceType.photoLibrary
image.allowsEditing = false
self.present(image, animated: true, completion: nil)
}
然后:
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) {
let image = info[UIImagePickerControllerOriginalImage] as! UIImage
userAvatar.setImage(image, for: .normal)
self.dismiss(animated: true, completion: nil)
}
图像选择成功,但存在问题。图像被拉伸到屏幕的底部。怎么做对了?
我也尝试了
userAvatar.imageView?.contentMode = .scaleAspectFit
userAvatar.imageView?.image = pickedImage
并
userAvatar.setImage(image.withRenderingMode(.alwaysOriginal), for: .normal)
有什么想法吗?先谢谢你!
答案 0 :(得分:1)
确保为imageView正确设置了约束。确保使用AspectFit(如果你有一个固定的宽度和高度,请填写),并确保你启用了clipToBounds。