【发布时间】:2023-03-13 22:29:01
【问题描述】:
我的是一个教育应用程序,给学生一个单词,然后应该选择相应的图像(比如将香蕉这个词与一个图像匹配,其中图像在 UIPickerview 中)但是,我的以下代码产生没有结果:
let possibleAnswers = [UIImage(named: Images.one), UIImage(named: Images.two), UIImage(named: Images.three), UIImage(named: Images.four)]
fileprivate let pickerView: UIPickerView = {
let pv = UIPickerView()
pv.translatesAutoresizingMaskIntoConstraints = false
return pv
}()
override func viewDidLoad() {
pickerView.delegate = self
pickerView.dataSource = self
}
extension ViewController: UIPickerViewDataSource {
func numberOfComponents(in pickerView: UIPickerView) -> Int {
return 1
}
func pickerView(_ pickerView: UIPickerView, numberOfRowsInComponent component: Int) -> Int {
return possibleAnswers.count
}
}
extension ViewController: UIPickerViewDelegate {
func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
let myImageView = UIImageView(frame: CGRect(x: 0, y: 0, width: 220, height: 61))
myImageView.image = possibleAnswers[row]
return myImageView
}
}
我做错了吗?我该如何纠正这个问题?
编辑1:
【问题讨论】:
-
你设置了 UIPickerView 委托吗?
-
@DilanAnuruddha,感谢您的回复。是的,我已正确设置,编辑了问题以更清楚地反映问题
-
使用
rowHeightForComponent函数设置pickerview行高。看我的回答
标签: swift uikit uipickerview