【问题标题】:Change Image CGRectMake Depending on iPad or iPhone根据 iPad 或 iPhone 更改图像 CGRectMake
【发布时间】:2014-03-27 05:34:41
【问题描述】:

我有几个图像视图,框架设置为CGRectMake()。这些图片非常适合 iPhone,但一旦在 iPad 上查看,它们的尺寸仍然很小。

有没有办法根据 iPad 或 iPhone 更改 CGRectMake 的大小?

当前代码示例:

backgroundView.frame = CGRectMake(3, 3, 55, 55);

【问题讨论】:

  • 为什么不使用autoresizingMask
  • 不熟悉这个。我将如何实现它来改变 iphone/ipad?
  • 我想这更多地取决于您的用例。但是假设您有一个用于 iPhone 和 iPad 的 .nib,或者如果没有 .nib,则视图控制器视图的初始大小在显示之前是恒定的(在调用 - (void)viewWillLayoutSubviews 之前),那么您的图像将按比例拉伸到 iPhone/ iPad 屏幕尺寸。只需设置UIViewAutoResizingFlexibleWidth | UIViewAutoResizingFlexibleHeight

标签: ios iphone objective-c


【解决方案1】:
if ([UIDevice currentDevice].userInterfaceIdiom == UIUserInterfaceIdiomPhone) {
    backgroundView.frame = CGRectMake(3, 3, 55, 55);
} else {
    backgroundView.frame = CGRectMake(/* iPad-friendly values here*/);
}

【讨论】:

    【解决方案2】:

    你可以用这个:

    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
    // iPad
    {
    
    }
    else
    // iPhone
    {
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-11-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多