В моем приложении я попытался сделать другой класс для вызова api. например, нажать кнопку входа в систему и вызвать метод разного класса. но когда я хочу перейти к другому диспетчеру просмотра из этого другого класса, он получит крах.как перейти на следующий viewController
вот мой код в loginViewController
let mydata = DataControllerLogin()
mydata.login(txtemail.text!,password: txtPassword.text!)
class DataControllerLogin: UIViewController {
func login(username:String,password:String)
{
if Reachability.isConnectedToNetwork() == true
{
let url = "\(basicURL)login"
let param : [String : AnyObject] = [
"email" : username,
"password" : password
]
Alamofire.request(.POST, url, parameters: param, encoding: .JSON).responseObject(completionHandler: { (response:Response<LoginCode, NSError>) in
if (response.result.value != nil)
{
let LoginCode = response.result.value
let message = LoginCode?.Message
let detail = LoginCode?.result
if (LoginCode?.Status == 1)
{
let controller : LoginViewController = self.storyboard?.instantiateViewControllerWithIdentifier("LoginViewController") as! LoginViewController
self.navigationController?.pushViewController(controller, animated: true)
SVProgressHUD.dismiss()
}
else
{
alertViewShow(self, title: "Sorry", message: message!)
SVProgressHUD.dismiss()
}
if let threedayForecast = LoginCode?.result {
print(threedayForecast.FirstName)
}
}
else
{
}
})
}
else {
alertViewShow(self, title: "No Internet Connection", message: "Make sure your device is connected to the internet.")
}
}
}
но его получение аварии на линии, где я есть определить ViewController.
let controller : LoginViewController = self.storyboard?.instantiateViewControllerWithIdentifier("LoginViewController") as! LoginViewController
self.navigationController?.pushViewController(controller, animated: true)
его показ ошибок как
exc_bad_instruction (code=exc_i386_invop subcode=0x0)
так что если вы знаете, пожалуйста, дайте мне знать, что это проблема?
Check LoginViewController имеет идентификатор LoginViewController в раскадровке? –
уже проверял, что у его же идентификатора –
ваш «DataControllerLogin» не находится в стеке или нет в контроллере навигации. –