Iphone 如何定位自定义UIPicker?

Iphone 如何定位自定义UIPicker?,iphone,objective-c,uipickerview,Iphone,Objective C,Uipickerview,因此,我试图在我的视图中定位一个自定义UIPicker。我遵循UICatalog代码,并在代码中应用相同的原则 他们的定位方式似乎是: CGSize pickerSize = [myPickerView sizeThatFits:CGSizeZero]; customPickerView.frame = [self pickerFrameWithSize:pickerSize]; 这是怎么回事?他们似乎在代码中其他地方创建的常规选择器上调用sizeThatFits,我不需要它,然后使用它来设置

因此,我试图在我的视图中定位一个自定义UIPicker。我遵循UICatalog代码,并在代码中应用相同的原则

他们的定位方式似乎是:

CGSize pickerSize = [myPickerView sizeThatFits:CGSizeZero];
customPickerView.frame = [self pickerFrameWithSize:pickerSize];
这是怎么回事?他们似乎在代码中其他地方创建的常规选择器上调用sizeThatFits,我不需要它,然后使用它来设置框架

我如何在不需要两个选择器的情况下实现这样的东西?我希望我的自定义选择器位于视图的底部

谢谢

如中所述,某些类型的对象类返回固定大小。UIPickerView就是其中之一,最好保持不变。因此,我们在UIPickerView对象上使用该方法获得适当的大小。你不需要第二个实例。您可以在没有框架的情况下初始化选择器对象,并对其调用此函数以获得适当的大小。

这对我来说很有效:

myPickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0, 244, 320, 216)];

通过在nib文件中拖动一个常规视图并使用相同的坐标,我找到了正确的大小和位置。

好的,我不明白为什么UIPickerView类中它不是某种静态类常量。在我看来,从类中获取常数更符合逻辑。类似于UIPickerView.size的东西,而不是为了获取值而初始化选择器对象。