我可以更改 UIPickerView 分隔符高度吗?

adm*_*m v 1 iphone picker uipickerview ios swift

我已经实现了一个选择器视图,但现在我想更改选择器视图分隔线的高度。我想要更厚的分隔线而不是这条默认线。那么这可以改变分隔符的高度吗???

在此处输入图片说明

我想要如下图所示的线条。

在此处输入图片说明

Yun*_*HEN 7

在 pickerView 的委托方法中更改线视图的高度:

public func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
    for view in pickerView.subviews {
        if view.frame.size.height < 1 {
            var frame = view.frame
            frame.size.height = 2
            view.frame = frame
            view.backgroundColor = UIColor.black
        }
    }

    let label = UILabel()
    label.text = "Test Text" //remember to change it to the real data
    label.textAlignment = NSTextAlignment.center
    return label
}
Run Code Online (Sandbox Code Playgroud)

记得设置 PickerView 的委托:

self.pickerView.delegate = self //or do this in XIB or Storyboard.
Run Code Online (Sandbox Code Playgroud)

效果:
在此处输入图片说明

  • @dahiya_boy,不,你错了。`rowHeightForComponent` 方法给出了整个行区域的高度。AdmV 需要的只是改变线的高度。 (2认同)