내가 2 개 UIViewController
의이 : UIImageView
과의 ViewController 'B'로함께 충돌 '치명적인 오류 : 예기치 않게 전무 발견'
의 ViewController 'A'라는 이름의 'RERUN_SETUP를' imagePickerController
과 함께 'SelectPhotos'라는 이름을 사용했습니다.
ViewController 'A'의 UIImageView
에 비어있는 투명 한 UIButton
이 있으며 ViewController 'B'가 표시되고 사용자가 카메라 또는 사진에서 사진을 추가하도록 선택할 수 있습니다. 의 ViewController 'A'는의 ViewController 'B'에 선언되어있다,하지만 난의 ViewController 'B'에서의 ViewController 'A', 오류와 함께 응용 프로그램 충돌에 UIImageView
을 변경하려고하면
fatal error: unexpectedly found nil while unwrapping an Optional value.
는, 내 코드입니다 도움이 크게 감사합니다 :)
의 ViewController 'A'
class RERUN_SETUP: UITableViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UIPopoverPresentationControllerDelegate {
//USER PICTURE
@IBOutlet weak var RERUNpictureIn: UIImageView?
//TRANSPARENT BUTTON OVER THE IMAGE VIEW
@IBAction func imageButton(sender: AnyObject) {
let popoverContent = self.storyboard?.instantiateViewControllerWithIdentifier("SelectPhotos")
popoverContent!.modalPresentationStyle = .Popover
popoverContent?.modalTransitionStyle = UIModalTransitionStyle.FlipHorizontal
var popover = popoverContent!.popoverPresentationController
if let popover = popoverContent!.popoverPresentationController {
let viewForSource = sender
popover.sourceView = self.view
popoverContent!.preferredContentSize = CGSizeMake(100,80)
popover.delegate = self
popover.permittedArrowDirections = .Any
}
self.presentViewController(popoverContent!, animated: true, completion: nil)
}
func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle {
return UIModalPresentationStyle.None
}
의 ViewController 'B'
import UIKit
class SelectPhotos: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {
var savedImage = NSUserDefaults.standardUserDefaults().objectForKey("image")
var imageToSave = UIImage()
var otherController:RERUN_SETUP = RERUN_SETUP()
@IBAction func camera(sender: UIButton) {
let pickerController = UIImagePickerController()
pickerController.delegate = self
pickerController.sourceType = UIImagePickerControllerSourceType.Camera
pickerController.allowsEditing = true
self.presentViewController(pickerController, animated: true, completion: nil)
}
@IBAction func photos(sender: AnyObject) {
let pickerController = UIImagePickerController()
pickerController.delegate = self
pickerController.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
pickerController.allowsEditing = true
self.presentViewController(pickerController, animated: true, completion: nil)
}
func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: [String : AnyObject]?) {
self.dismissViewControllerAnimated(true, completion: nil)
self.imageToSave = image
otherController.RERUNpictureIn!.image = image
}
override func viewDidLoad() {
super.viewDidLoad()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
답장을 보내주십시오. –
늦은 답변에 대해 죄송합니다 ... 실제로 지금은 충돌하지 않지만 imageView는 사진을 변경하지 않습니다. – Deyan
SelectPhotos의이 줄은 "SelectPhotos의 값에 'getImage'멤버가 없습니다. self.getImage (self.imageToSave) – Deyan