如何获取 UIPickerView 中组件的位置?

Posted

技术标签:

【中文标题】如何获取 UIPickerView 中组件的位置?【英文标题】:How do I get the position of a component in UIPickerView? 【发布时间】:2016-08-12 04:55:45 【问题描述】:

我想在 UIPickerView 中的组件旁边添加一个“min”标签。要确定 x 坐标,我需要知道组件的 x 坐标,以便根据不同的屏幕设备进行调整。

【问题讨论】:

请提供更多细节以便更好地理解(如图片)。 【参考方案1】:

您可以测试您的项目是否在func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? 中最后一个,并将最小文本添加到“组件”。

示例:

// MARK: - Properties

private var dataSource: [PickerViewItem] = [...]

// MARK: - UIPickerViewDataSource

func pickerView(pickerView: UIPickerView, titleForRow row: Int, forComponent component: Int) -> String? 
    if (row == self.dataSource.count - 1) 
        return "min: " + self.dataSource[row].description
    
    return self.dataSource[row].description

如果你想要不同的字体或文本大小,你可以使用func pickerView(pickerView: UIPickerView, attributedTitleForRow row: Int, forComponent component: Int) -> NSAttributedString? 方法来格式化你的字符串。

【讨论】:

以上是关于如何获取 UIPickerView 中组件的位置?的主要内容,如果未能解决你的问题,请参考以下文章

如何根据位置更改 UIPickerView 标题文本颜色

如何在 UIPickerview iOS swift 中为组件赋予标题

如何从UIPickerView获取选定的值

如何正确禁用 UIPickerView 组件滚动?

如何在 UIPickerView 中选择不同组件的完整行?

UIPickerView 改变框架的大小和位置