Я создал приложение, в котором мне нужно войти в систему двумя способами: - Facebook Login, - Обычный вход (адрес электронной почты, пароль).SWRevealViewController segue застрял только с 1 кнопкой
Я добавил FBLogin с Facebook SDK и изменил кнопку, чтобы не использовать кнопку fb по умолчанию. Я добавил segue (Present Modally) из моего loginView в anotherView с помощью segue (называемый «fb_login») и установил класс segue в «SWRevealViewControllerSeguePushController».
Теперь я делаю то же самое с моей кнопкой входа в систему. изменил идентификатор и установил класс segue, но когда я нажимаю его, приложение закрывается (без ошибок на xCode), поэтому мне нужно закрыть его и снова открыть.
Я попытался изменить тип segue с «Preset Modally», чтобы «показать контроллер контроллера контроллера», но ничего не изменилось (оно не застревает, но оно не работает).
Это функция на кнопку Вход нажимается:
@IBAction func loginButtonPressed(_ sender: UIButton) {
var email = emailTextField.text
var password = passwordTextField.text
let urlString = "..."
let urlwithPercentEscapes = urlString.addingPercentEncoding(withAllowedCharacters: .urlQueryAllowed)
let url = URL(string: urlwithPercentEscapes!)
URLSession.shared.dataTask(with:url!, completionHandler: {(data, response, error) in
if error != nil {
print(error)
} else {
do {
//PARSEDDATA CONTIENE TUTTE LE TUPLE
let parsedData = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! NSDictionary
let temp = parsedData["user"] as! NSArray
var userLogin = temp[0] as! NSDictionary
if((userLogin["login"]) as! Int == 1){ //login successfully
self.user.name = userLogin["name"]! as! String
self.user.surname = userLogin["surname"]! as! String
self.user.email = userLogin["email"]! as! String
self.user.url_image = userLogin["profile_img_url"]! as! String
self.user.id_user = Int(userLogin["id_user"]! as! String)!
self.user.gender = Int(userLogin["gender"]! as! String)!
self.user.birthday = userLogin["birthday"]! as! String
self.user.id_license = userLogin["id_license"]! as! String
self.user.registration_date = userLogin["registration_date"]! as! String
self.user.expire_date = userLogin["expire_date"]! as! String
self.user.mac_address = userLogin["mac_address"]! as! String
self.user.license_key = userLogin["license_key"]! as! String
self.user.license_type = Int(userLogin["license_type"]! as! String)!
sleep(2)
self.performSegue(withIdentifier: "normal_login", sender: nil)
}else{ //login failed
print("login failed")
}
} catch let error as NSError {
print(error)
}
}
}).resume()
}
спасибо всем, ребята! (Я использую Swift 3.0)
yesssss !!!! Это сработало! Спасибо вам @ Midhun MP! –
@CarloDiDomenico: Добро пожаловать. Рад слышать, что это помогло вам решить проблему. Счастливое кодирование !!! –