我的故事板上有这个 UIPickerView :
这是基于 Size Inspector 的位置:
这是我的代码:
- (void)showPickerView
{
[UIView animateWithDuration:0.5 delay:0 options:UIViewAnimationOptionBeginFromCurrentState animations:^{
self.picker.frame = CGRectMake(0 , 288, self.picker.frame.size.width, self.picker.frame.size.height);
self.picker.hidden = NO;
}
completion:^(BOOL finished) {
}];
}
(经过反复试验)为了在 4 英寸屏幕上正确放置(底部),我必须将 288 设置为 Y。我不知道这个数字来自哪里。
因为如果你在这里做一些数学运算,你不会得到那个数字:
iPhone 屏幕高度 = 1136px,pickerview 高度 = 216pts = 432px
如果 X 和 Y 从 TOP-LEFT (0, 0) 测量,那么对于 4 英寸屏幕,我应该使用 1136 - 432 = 704 px / 2 = 352pts。不是288分。
但根据 Size Inspector 的原点,这个物体是从左下角开始测量的。因此,现在从左下角测量 X 和 Y 的 (0,0)。你仍然不会得到那个号码。
另外,更糟糕的是……当我在 3.5 英寸模拟器上运行时,它没有完全显示出来。
如何为 UIPickerView 提供 X 和 Y 值,以便在 3.5 和 4 英寸视网膜显示屏上完美显示?
谢谢你。