2017-08-23 30 views
-4

我得到這個愚蠢的錯誤,但我無法找出它的來源。如果任何人都可以查看我的代碼,會是很大的,它可能是一些超級簡單,我只是找了!該錯誤是在代碼的最後一行「預期的表達」!謝謝!預期的表達式錯誤斯威夫特3

// 
// ViewController.swift 
// intern 
// 
// Created by Lani Daniels on 8/1/17. 
// Copyright © 2017 Lani Daniels. All rights reserved. 
// 

import UIKit 
import Firebase 
import FirebaseDatabase 
import FirebaseAuth 


class HomeViewController: UIViewController, UITextFieldDelegate { 

    @IBOutlet weak var emailField: UITextField! 
    @IBOutlet weak var passwordField: UITextField! 

    @IBOutlet weak var actionButton: UIButton! 
    override func viewDidLoad() { 
     super.viewDidLoad() 


     //Do any additional setup after loading the view, typically from a nib. 
     self.passwordField.delegate = self; 

    } 
    @IBAction func createNew(_ sender: Any) { 
     self.performSegue(withIdentifier: "createAccount", sender: self) 

    } 
    @IBAction func signInTapped(_ sender: Any) { 
     self.performSegue(withIdentifier: "toMM", sender: self) 
     if emailField.text != "" && passwordField.text != "" 
     { 
      Auth.auth().signIn(withEmail: emailField.text!, password: passwordField.text!, completion: { (user, error) in if user != nil 
      { 
       // Sign in successful 
       } 
       else 
      { 
       if let myError = error?.localizedDescription 
       { 
        print(myError) 
       } 
       else 
       { 
        print("ERROR") 
       } 
       }} 
      ) 
      func textFieldShouldReturn(_ textField: UITextField) -> Bool { 
       self.view.endEditing(true) 
       return false 
       )}}}} //ERROR: EXPECTED EXPRESSION 
+2

最後一行中的關閉'''是絕對錯誤的。 BTW:適當縮進幾乎總是解決了這些問題。 – luk2302

+3

爲什麼裏面是另一種方法'textFieldShouldReturn'方法?爲什麼所有這些最後的曲線都在一條線上?與'signInTapped'方法裏面散落額外的右括號是什麼? – rmaddy

回答

2

幾個關閉字符被放錯了地方。這裏是你的代碼,正確格式化:

// 
// ViewController.swift 
// intern 
// 
// Created by Lani Daniels on 8/1/17. 
// Copyright © 2017 Lani Daniels. All rights reserved. 
// 

import UIKit 
import Firebase 
import FirebaseDatabase 
import FirebaseAuth 


class HomeViewController: UIViewController, UITextFieldDelegate { 

    @IBOutlet weak var emailField: UITextField! 
    @IBOutlet weak var passwordField: UITextField! 

    @IBOutlet weak var actionButton: UIButton! 
    override func viewDidLoad() { 
     super.viewDidLoad() 

     //Do any additional setup after loading the view, typically from a nib. 
     self.passwordField.delegate = self; 

    } 
    @IBAction func createNew(_ sender: Any) { 
     self.performSegue(withIdentifier: "createAccount", sender: self) 

    } 

    @IBAction func signInTapped(_ sender: Any) { 
     self.performSegue(withIdentifier: "toMM", sender: self) 
     if emailField.text != "" && passwordField.text != "" 
     { 
      Auth.auth().signIn(withEmail: emailField.text!, password: passwordField.text!, completion: { (user, error) in 
       if user != nil 
       { 
        // Sign in successful 
       } 
       else 
       { 
        if let myError = error?.localizedDescription 
        { 
         print(myError) 
        } 
        else 
        { 
         print("ERROR") 
        } 
       } 
      }) 
     } 
    } 

    func textFieldShouldReturn(_ textField: UITextField) -> Bool { 
     self.view.endEditing(true) 
     return false 
    } 
}