iOS 4.0 contentScaleFactor和scale - 如何在3.1.3中处理?

时间:2010-11-15 23:05:05

标签: iphone

我的任务是让在iOS 4.0中运行的应用再次在3.1.3和3.2中工作。大多数情况下它很简单但是处理新的API用于扩展以及必须传递/返回值的其他情况很难。

respondsToSelector / performSelector几乎处理其他所有事情。

以下是正在进行的简化版本:

-(float)getImageScaleFactor 
{
  if([[UIScreen mainScreen] scale == 2.0)
      return kScaleFactorForRetinaDisplay;
  else
      return kScaleFactorForOlderDisplay;
}

比例不在4.0之前的iOS中。

任何人都可以展示适用于所有iOS版本的代码示例吗?

1 个答案:

答案 0 :(得分:2)

我使用的代码非常相似,但您遗漏了一个重要部分:respondsToSelector:

if([[UIScreen mainScreen] respondsToSelector:@selector(scale)] && [UIScreen mainScreen].scale == 2.0f)
    return kScaleFactorForRetinaDisplay;
else
    return kScaleFactorForOlderDisplay;