【问题标题】:Weird sizing issue with UIPickerViewUIPickerView 出现奇怪的尺寸问题
【发布时间】:2013-07-17 13:20:38
【问题描述】:

我在屏幕上制作动画的 UIPickerView 遇到了一些奇怪的行为。 Interface Builder 告诉我 UIPickerView 的大小是 216.0,但是当我使用

将视图动画到屏幕上时
[UIView animateWithDuration:0.25 animations:^{
    pickerView.frame = CGRectMake(0, self.view.frame.size.height-216, 320, 216);
}];

选择器视图实际上只出现在屏幕的一部分。为了获得整个选择器视图,我需要将高度视为 280。这可能是什么原因?

【问题讨论】:

  • 我认为您无法更改选择器视图的大小。当您尝试时,它会更改原点。
  • 我没有改变大小,只是改变原点。
  • 对不起,我是按你的标题,而不是你的代码。你有自动布局吗?
  • 是的,但是这个视图是完全以编程方式创建的。另外,自动布局不会简单地将选择器视图返回到其原始位置吗?
  • 是的,它可能会。您的选取器视图位于动画之前的什么位置?

标签: iphone ios objective-c uipickerview


【解决方案1】:

280 与 216+64 相同。 64 是 20pt 状态栏加上 44pt 导航或工具栏的总和。我会检查您的层次结构,也许您将选择器添加到应用程序窗口,但使用位于另一个容器内的 VC 的视图框架设置坐标?

【讨论】:

  • 感谢您指出这一点,这突出了我的代码中应该存在的明显缺陷。我将它初始化为屏幕的高度,但将其添加到视图中。谢谢!
猜你喜欢
  • 2012-06-25
  • 1970-01-01
  • 2011-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-24
  • 2012-01-30
  • 1970-01-01
相关资源
最近更新 更多