删除UIPickerView边框

mig*_*now 1 uipickerview ios swift

默认的"UIPickerView"在我想删除的顶部和底部有一条细灰线,但我无法知道如何做到这一点.

有什么地方我可以设置清除吗?

Aam*_*irR 6

您必须对 进行子类化UIPickerView,例如:

class MyPickerView: UIPickerView {

    override func layoutSubviews() {
        super.layoutSubviews()

        self.layer.borderWidth = 0 // Main view rounded border

        // Component borders
        self.subviews.forEach {
            $0.layer.borderWidth = 0
            $0.isHidden = $0.frame.height <= 1.0
        }
    }

}
Run Code Online (Sandbox Code Playgroud)


Ash*_*tha 5

在picker视图数据源方法中

 func numberOfComponents(in pickerView: UIPickerView) -> Int {

    pickerView.subviews.forEach({
        $0.isHidden = $0.frame.height < 1.0
    })
    return 1

}
Run Code Online (Sandbox Code Playgroud)

线条将消失