iOS 使 UITableViewCell 中的 UIPickerView 适合一行

iOS make UIPickerView in UITableViewCell fit in one row

我有一个自定义 UITableView,我想在某些行中显示一个选择器。我通过向 accessoryView 添加选择器来实现这一点,例如

case 1:
    cell.textLabel?.text = "Color mode"
    let picker = UIPickerView()
    colorModeDelegate = ColorModeDelegate()
    picker.dataSource = colorModeDelegate
    picker.delegate = colorModeDelegate
    picker.showsSelectionIndicator = true
    cell.accessoryView = picker
    break

但结果是选择器在其单元格上方和下方扩展,并带有其他替代值,结果是一团糟:

是否可以使这些选择器适合一行,并仅显示选定的值(即将可见区域剪切到 table 单元格)。这是我想要实现的一个例子。最后一行显示在两个值之间,因为它在被更改的过程中(用户正在拖动)

通过将 table 单元格的 clipToBounds 属性 设置为 true,我取得了非常接近的结果。