我的 ViewController - 我只是选择一个图像,然后更新 imageView。尽管如此,每当我离开 View 时,ImageView 都会回到“face-unknown”,因为 newImage 为零。
为什么变量 newImage 不记得 View 更改后的图像?
var newImage: UIImage!
@IBOutlet weak var imageView: UIImageView!
var imagePicker = UIImagePickerController()
override func viewDidLoad() {
super.viewDidLoad()
if((newImage == nil)){
imageView.image = UIImage(named:"face-unknown")!
}else{
imageView.image = newImage
}
}
func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
if let possibleImage = info["UIImagePickerControllerEditedImage"] as? UIImage {
imageView.image = resizeImage(possibleImage,newWidth: 150)
newImage = resizeImage(possibleImage,newWidth: 150)
} else if let possibleImage = info["UIImagePickerControllerOriginalImage"] as? UIImage {
imageView.image = resizeImage(possibleImage,newWidth: 150)
newImage = resizeImage(possibleImage,newWidth: 150)
} else {
return
}
最佳答案
您的 imageView 又回到了“face-unknown”状态,因为 viewDidLoad()
方法仅被调用一次。不是因为你的 UIImage 为零。相反,尝试在 viewWillAppear()
方法中更新您的 UIImageView,它应该可以工作
关于ios - 当 View 改变时变量变为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36867988/