如何更改UIPickerView中每个组件的宽度?

时间:2010-12-02 17:55:44

标签: iphone uipickerview

如何更改UIPickerView

中每个组件的宽度

2 个答案:

答案 0 :(得分:31)

在选择器的委托中实现pickerView:widthForComponent:方法,并从中返回每个组件的适当宽度。 e.g。

- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component{
      switch (component){
           case 0: 
                return 100.0f;
           case 1: 
                return 60.0f;
     }
      return 0;
}

答案 1 :(得分:2)

Swift 4版本:

func pickerView(_ pickerView: UIPickerView, widthForComponent component: Int) -> CGFloat {
    let w = pickerView.frame.size.width
    return component == 0 ? (2 / 3.0) * w : (1 / 3.0) * w
}

在此示例中: 第一个组件的宽度为2/3,第二个组件为1/3

由于屏幕尺寸不同,使用固定值可能不是一个好主意。