swift 4 个带有图像的 pickerview

swift 4 pickerview with images

我正在尝试让图像显示在 pickerview 中而不是文本中。 我看到了?并且没有图像。我知道图像是正确的,因为我在另一个视图中使用它们。

我尝试关注其他一些堆栈溢出帖子,但无济于事。 像这样:

代码:

import UIKit

class ShuffleViewController: UIViewController, UIPickerViewDelegate, UIPickerViewDataSource {

@IBOutlet weak var label: UILabel!

@IBOutlet weak var shufflePicker: UIPickerView!
var pickerData: [String] = [String]()

let images = [UIImage(named:"Acceptance"),
              UIImage(named: "loveimage"),
              UIImage(named: "gratimage"),
              UIImage(named: "successsmall"),
              UIImage(named: "pos"),
              UIImage(named: "rel"),
              UIImage(named: "weal"),
              UIImage(named: "heal2"),
              UIImage(named: "confiden")]

override func viewDidLoad() {
    super.viewDidLoad()

    shufflePicker.delegate = self
    shufflePicker.dataSource = self

}

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


func pickerView(pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {

}


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


func pickerView(_ pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> UIImage? {

return images[row]
}

我不知道该怎么做,因为我对 Xcode 和 swift

还很陌生

就用这个方法

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 = pickerDataSource[row]


        return myImageView

    }