ios - UIPickerView 不能正确显示图像

标签 ios swift uipickerview

我正在实现一个仅包含图像的自定义选择器 View 。问题是,图像像这样相互叠加: enter image description here

这是在选择器 View 中配置图像的代码:

func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView {
    let chosenImage: UIImageView = UIImageView(image: UIImage(named: iconArray[row]))
    NSLog("choosen image \(iconArray[row])")
    let workaroundImageView: UIImageView = UIImageView(frame: chosenImage.frame)
    workaroundImageView.backgroundColor = UIColor(patternImage: chosenImage.image!)
    return workaroundImageView
}

我错过了什么?有什么建议么?

最佳答案

在 UIPickerView 的委托(delegate)中利用 rowHeightForComponent。

pickerView:rowHeightForComponent:

给出组件所需的行高。

func pickerView(pickerView: UIPickerView!, rowHeightForComponent component: Int) -> CGFloat

关于ios - UIPickerView 不能正确显示图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33929312/

相关文章:

ios - 如何从 Xcode 8 中的 Assets.xcassets 添加不同屏幕尺寸的图像?

ios - TableView 或 TableView 单元格宽度不正确

ios - 链接器命令失败,退出代码为1

ios - NSPredicate,获取结果与一对多关系的子集

ios - 将 NSArray 放入 TableView

ios - 如何从另一个 UIPickerView 更改 UIPickerView 的字符串?

ios - 以编程方式添加 UIPickerView

ios - 可以为代码部分添加类型别名吗?

swift - Facebook图片快速缩放动画,图片未显示初始位置

ios - 如何在整个生命周期内动态更改 UIpickerview 的行高?