Po ponownym sprawdzeniu kodu, który wydawał się działać z Xcode6 beta 5, zauważyłem, że otrzymuję komunikat "Nie można przekonwertować typu wyrażenia" [AnyObject]? wpisać „błąd„NSArray”dla tej linii:Nie można przekonwertować typu wyrażenia "[AnyObject]?" wpisać "NSArray"
let textFields:NSArray = loginAlert.textFields as NSArray
Oto fragment kodu, który wydaje się być problem:
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
}))
}
żadnych pomysłów na czym polega problem?
Czy próbowałeś: 'loginAlert.textPłyty jako AnyObject! jako NSArray' –