2017-07-04 36 views
1

爲什麼視圖控制器不符合UIPickerViewDataSource?不符合協議「UIPickerViewDataSource」

我已經檢查了我能做的所有事情,從網上進行調試。

我已經鍵入了協議(Swift 3.1)的所有必要功能,但徒勞無功。

這裏是我的代碼:

class SelectClassViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource { 
    let grades = ["7", "8", "9", "10", "11", "12"] 

    var selectCurrentGrade : String? = nil 

    @IBOutlet weak var Grade: UIPickerView! 

    @IBAction func Next(_ sender: Any) { 
     if selectCurrentGrade != nil { 
      performSegue(withIdentifier: "GradeToClass", sender: self) 
     } 
    } 

    @IBAction func Back(_ sender: Any) { 
     performSegue(withIdentifier: "GradeToMain", sender: self) 
    } 

    override func viewDidLoad() { 
     super.viewDidLoad() 

     func numberOfComponents(in pickerView: UIPickerView) -> Int { 
      return 1 
     } 

     func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? { 
      return grades[row] 
     } 

     func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int { 
      return grades.count 
     } 

     func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) { 
      selectCurrentGrade = grades[row] 
     } 
    } 
} 

回答

0

你的函數裏面viewDidLoad,向外移動的他們,這會工作