UIPickerView高度不可更改

jki*_*gel 8 iphone frame uipickerview ios

我正在尝试改变PickerView的高度

self.pickerView = [[UIPickerView alloc] init];
self.pickerView.frame = CGRectMake(0, 0, frame.size.width, frame.size.height);
Run Code Online (Sandbox Code Playgroud)

Xcode日志显示以下消息:

-[UIPickerView setFrame:]: invalid height value 274.0 pinned to 216.0 
Run Code Online (Sandbox Code Playgroud)

我怎样才能改变它的高度?

Par*_*iya 30

这里three valid heights仅供参考UIPickerView (162.0, 180.0 and 216.0).

您可以使用CGAffineTransformMakeTranslationCGAffineTransformMakeScale功能将拾取器正确安装到您的方便.

例:

CGAffineTransform t0 = CGAffineTransformMakeTranslation (0, pickerview.bounds.size.height/2);
CGAffineTransform s0 = CGAffineTransformMakeScale       (1.0, 0.5);
CGAffineTransform t1 = CGAffineTransformMakeTranslation (0, -pickerview.bounds.size.height/2);
pickerview.transform = CGAffineTransformConcat          (t0, CGAffineTransformConcat(s0, t1));
Run Code Online (Sandbox Code Playgroud)

上面的代码changeheightpicker view to halfre-position它的确切(Left-x1, Top-y1)位置.

请参阅此处.