Ne peut pas convertir l'expression est de type '[AnyObject]?' de type 'NSArray'
À revoir certaines de code qui semblait travailler avec Xcode6 beta 5, j'ai remarqué que je suis un "Ne peut pas convertir l'expression est de type '[AnyObject]?' de type 'NSArray'" erreur à cette ligne:
let textFields:NSArray = loginAlert.textFields as NSArray
Ici est la section de code qui semble être le problème:
override func viewDidAppear(animated: Bool) {
if PFUser.currentUser() == nil{
var loginAlert:UIAlertController = UIAlertController(title: "Sign Up /Login", message: "Please sign up or login", preferredStyle: UIAlertControllerStyle.Alert)
loginAlert.addTextFieldWithConfigurationHandler({
textfield in
textfield.placeholder = "Your username"
})
loginAlert.addTextFieldWithConfigurationHandler({
textfield in
textfield.placeholder = "Your password"
textfield.secureTextEntry = true
})
loginAlert.addAction(UIAlertAction(title: "Login", style: UIAlertActionStyle.Default, handler: {
alertAction in
let textFields:NSArray = loginAlert.textFields as NSArray
let usernameTextfield:UITextField = textFields.objectAtIndex(0) as UITextField
let passwordTextfield:UITextField = textFields.objectAtIndex(1) as UITextField
}))
}
Aucune idées de ce qu'est la question?
- Avez-vous essayé:
loginAlert.textFields as AnyObject! as NSArray
Vous devez vous connecter pour publier un commentaire.
Sonne comme
loginAlert.textFields
est défini comme Facultative et peut êtrenil
par conséquent, si vous êtes sûr que ce n'est pasnil
- la découvre d'abord par l'aide de!
:ou:
Joli exemple de base dans l'aire de jeux: