数组数据在选择器视图中不可见

Array data is not visible on picker view

我有要在 UIPickerView 上显示的数组数据,但数据未显示在选取器视图中。我的代码:

@IBOutlet var txt: UITextField!
let PickerView = UIPickerView()
override func viewDidLoad() {
  super.viewDidLoad()
        Json()
        txt.inputView = PickerView
        PickerView.delegate = self
        PickerView.dataSource = self
        // Do any additional setup after loading the view.
    }
   func Json()
    {
      { (response, error) in
            if response != nil
            {

                let Value = response!["data"] as! [[String:Any]]
                for dic in dataDict
                {

                    if let job = dic["Jobs"] as? String
                    {
                        print(job)
                        self.array.append(job)
                        print(self.array)
                    }

                }

            }

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

    func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
        return array.count
    }
    func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
        txt.text = array[row]
    }
    func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
        return array[row]
    }

为什么会这样,有什么办法可以解决这个问题吗?

    txt.inputView = PickerView
    PickerView.delegate = self
    PickerView.dataSource = self
    Json()

请重新加载 picker.reloadAllComponent() 作为回应