2017-06-13 1 views
0

Je suis nouveau à Xcode et actuellement j'essaie de suivre un tutoriel sur la façon de créer une page de connexion et d'inscription en utilisant Firebase. J'ai frappé un peu de roadbloc atm, car après avoir ajouté du code pour la capture d'image pour l'image du profil utilisateur, l'application arrive avec le message d'erreur suivant et je ne sais pas comment résoudre ce problème, alors quelqu'un pourrait expliquer à moi ce que j'ai besoin de faire ou pointez moi dans la bonne direction, merci beaucoup!Comment réparer l'utilisateur log dans l'importation de profil et l'affichage en utilisant UIImagePickerController dans Xcode

Message d'erreur de la console:

13/06/2017 15: 47: 05,450 ToDoList [992] [Firebase/Analytics] [I-ACS023012] Firebase Analytics a permis 13/06/2017 15:47: 10.104832 ToDoList [992: 265128] Classe inconnue SignUpViewController dans le fichier Interface Builder. 2017-06-13 15: 47: 10.116920 ToDoList [992: 265128] * Fin de l'application en raison d'une exception non interceptée 'NSUnknownKeyException', raison: '[setValue: forUndefinedKey:]: cette classe n'est pas une valeur clé codage-conforme pour le key countryTextField. ' * pile premier appel de lancer: (0x1862d01c0 0x184d0855c 0x1862cfe88 0x186cd71a0 0x18c477864 0x18c61b558 0x1861efdc4 0x18c619f2c 0x18c47a838 0x18c24ca58 0x18c118260 0x18c118190 0x18cadbf24 0x18c462f18 0x18c484384 0x18c487250 0x18c20b070 0x19a0b36e0 0x18c8e8144 0x18c8d91d8 0x18c8d8fe0 0x18c8d92b0 0x18c14d9a0 0x18c14d920 0x18c137dd0 0x18c14d20c 0x18c14cd34 0x18c147f7c 0x18c118a44 0x19a07a35c 0x18c905ea8 0x18c8ff910 0x18627e278 0x18627dbc0 0x18627b7c0 0x1861aa048 0x187c2d198 0x18c183818 0x18c17e550 0x100079d28 0x18518c5b8) libC++ abi.dylib: mettre fin à l'exception du type uncaught NSException

Mon code à ce jour:

importation UIKit

classe SignUpViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate {

@IBOutlet weak var userImageView: UIImageView! 

@IBOutlet weak var usernameTextField: UITextField! 

@IBOutlet weak var emailTextField: UITextField! 

@IBOutlet weak var passwordTextField: UITextField! 

@IBOutlet weak var countryTextField: UITextField! 


override func viewDidLoad() { 
    super.viewDidLoad() 

    // Do any additional setup after loading the view. 
} 

// Choose image for the profile picture 
@IBAction func choosePicture(sender: Any) { 

    let pickerController = UIImagePickerController() 
    pickerController.delegate = self 
    pickerController.allowsEditing = true 

    let alertController = UIAlertController(title: "Add a Picture", message: "Choose From", preferredStyle: .actionSheet) 

    let cameraAction = UIAlertAction(title: "Camera", style: .default) { (action) in 
     pickerController.sourceType = .camera 
     self.present(pickerController, animated: true, completion: nil) 
    } 

    let photoLibraryAction = UIAlertAction(title: "Photo Library", style: .default) { (action) in 
     pickerController.sourceType = .photoLibrary 
     self.present(pickerController, animated: true, completion: nil) 
    } 

    let savedPhotosAction = UIAlertAction(title: "Saved Photos Album", style: .default) { (action) in 
     pickerController.sourceType = .savedPhotosAlbum 
     self.present(pickerController, animated: true, completion: nil) 
    } 

    let cancelAction = UIAlertAction(title: "Cancel", style: .cancel, handler: nil) 

    alertController.addAction(cameraAction) 
    alertController.addAction(photoLibraryAction) 
    alertController.addAction(savedPhotosAction) 
    alertController.addAction(cancelAction) 

    present(alertController, animated: true, completion: nil) 

} 
// Add image to the profile image circle 
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : Any]) { 
    if let image = info[UIImagePickerControllerOriginalImage] as? UIImage 
    { 
     userImageView.image = image 
    } 
    else 
    { 
     //Error message 
    } 
} 




@IBAction func signUpAction(_ sender: Any) { 
} 

}

Répondre

0

Après avoir examiné le problème des autres en ce qui concerne NSUnknownKeyException, il est en fait assez difficile à cerner ce que les solutions spécifiques. Mais j'ai essayé la méthode suivante et cela a fonctionné pour moi:

Parfois, cela a à voir avec votre "Hériter de la cible" Cette valeur doit être définie. Avec les applications à cible unique, vous pouvez simplement sélectionner Hériter de la cible. Si vous avez plus d'une cible, sélectionnez la cible souhaitée.

Lien vers ma solution: What does this mean? "'NSUnknownKeyException', reason: … this class is not key value coding-compliant for the key X"