【问题标题】:How do I make UIPickerview adjust to screen size?如何让 UIPickerview 适应屏幕大小?
【发布时间】:2016-12-05 03:27:07
【问题描述】:

我有一个在我的 iPhone 应用程序中创建的选择器,它运行良好 - 但选择器是叠加层的一部分,因此某些值是硬编码的,用于确定叠加层的下方和左侧多远出现。

因此,当我尝试制作类似的 iPad 版本时,会出现明显的错误。我打开了 iPad 故事板并设置了所有内容,但是当我运行它时,uipickerview 出现在巨大的 iPad 屏幕的中间和左侧,远离它应该在的位置。

有没有办法让选择器的覆盖层自动居中并紧贴屏幕底部,无论屏幕大小如何,而不是硬编码其位置?

【问题讨论】:

  • 用代码或约束来做这个?
  • 代码,我想(不确定你所说的约束是什么意思 - 我刚刚开始编写 iOS 应用程序,所以我很容易迷路)。
  • 如果您有兴趣了解约束(或自动布局,它可以解决您处理的问题),请查看:developer.apple.com/library/ios/#recipes/…
  • 谢谢,罗格!不幸的是,这个覆盖不是故事板布局区域的一部分,所以我不能点击它并为其设置自动布局。我可以为所有其他可见的字段,但从情节提要中看不到覆盖。 (但是,我已经将这些约束用于其他所有事情 - 谢谢!)

标签: iphone ios ipad


【解决方案1】:

看起来您希望选择器位于视图控制器主视图的底部(我假设它是父视图),并且与视图一样宽。试试这个...

CGRect viewFrame = self.view.frame;
CGRect pickerHeight = self.picker.frame.size.height;  // assume you have an outlet called picker
CGRect pickerFrame = CGRectMake(0.0, viewFrame.size.height-pickerHeight,
                         viewFrame.size.width, pickerHeight);
self.picker.frame = pickerFrame;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-12
    • 1970-01-01
    • 2013-07-24
    相关资源
    最近更新 更多