UIPickerView作为inputView在方向改变时搞砸了

时间:2011-09-27 23:13:36

标签: iphone objective-c orientation uipickerview inputview

我正在使用标准的UIPicker视图作为iPhone应用程序中textField的inputView。以横向或纵向加载视图时,拾取器的大小与相应的键盘大小相同。但是,当您在视图内旋转设备一次时,拾取器不会正确调整其高度,就像它的宽度一样。我有UIViewAutoresizingFlexibleWidth设置。当我尝试设置UIViewAutoresizingFlexibleHeight时,拾取器在旋转时变得混乱(断断续续的图形,组件切断),尽管高度是正确的!有没有人想到这个?

2 个答案:

答案 0 :(得分:3)

我发现如果您使用iOS 7,只需添加:

pickerView.autoresizingMask = UIViewAutoresizingFlexibleHeight;

这解决了我的问题。过渡不是很不稳定,看起来像“应该”看起来。

答案 1 :(得分:0)

我找到了创可贴:

在托管viewController中的didRotateFromInterfaceOrientation:中,在该选择器视图上调用setNeedsLayout。在旋转过程中可以看到奇怪的布局毛刺,但最后会清理。