为以下方法返回自定义 View 以自定义选择器行:
public override func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
return PickerAccessoryView.instantiateFromNib()
}
并返回全宽:
public func pickerView(_ pickerView: UIPickerView, widthForComponent component: Int) -> CGFloat {
return pickerView.frame.width
}
不调整行 View 的大小:O
最佳答案
通过将自定义 View 的初始框架设置为 .zero 解决:
public override func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
let view = PickerAccessoryView.instantiateFromNib()
view.frame = .zero
return view
}
关于iOS UIPickerView 自定义行 View 宽度错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51079488/