PickerView调用点击事件,让它选择某一个数字
时间: 2024-02-20 08:57:21 浏览: 99
要让一个 UIPickerView 选中某个数字,可以通过调用它的 `selectRow(_:inComponent:animated:)` 方法来实现。该方法需要传入两个参数:所选行的索引和所选列的索引。例如,下面的代码展示了如何让一个 UIPickerView 选中第二行第一个数字:
```swift
class MyViewController: UIViewController, UIPickerViewDelegate {
var pickerView: UIPickerView!
let data = ["1", "2", "3", "4", "5"]
override func viewDidLoad() {
super.viewDidLoad()
pickerView = UIPickerView()
pickerView.delegate = self
view.addSubview(pickerView)
// 选择第二行第一个数字
pickerView.selectRow(1, inComponent: 0, animated: true)
}
override func viewDidLayoutSubviews() {
super.viewDidLayoutSubviews()
pickerView.frame = CGRect(x: 0, y: 100, width: view.bounds.width, height: 200)
}
func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? {
return data[row]
}
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return data.count
}
}
```
在上面的例子中,我们在 `viewDidLoad()` 中调用了 `selectRow(_:inComponent:animated:)` 方法来选中第二行第一个数字。注意,该方法的第二个参数 `inComponent` 表示所选列的索引,因为我们这里只有一列,所以传入的值为0。当然,你也可以根据需求选择任意一行任意一列的数字。
阅读全文