iOS中的图像查看器应用策略

时间:2011-09-05 13:31:24

标签: iphone ios ipad

假设我想创建漫画阅读器应用程序,用户可以在应用程序购买时下载漫画,我的问题是我应该为iPhone和iPad创建通用应用程序或不同的应用程序? 这个应用程序的工作主要是显示图像,我主要关心的是提供正确尺寸的图像。我对此事的想法是:

通用应用: 专业:更容易处理一个应用程序而不是两个 Con:图像必须是iPad分辨率(最高分辨率),这些图像尺寸将在具有较小分辨率的iPhone中浪费。

不同的iPad / iPhone应用: Pro:可以为每个平台提供合适的尺寸 骗局:如果他们同时拥有iPhone和iPad,用户必须购买两个独立的应用程序(及其应用内购买物品)。

由于这是我的第一个应用程序,我更喜欢使用通用应用程序,所以我不必维护两个不同的应用程序,但我欢迎任何输入。

3 个答案:

答案 0 :(得分:2)

您可以使用(如果您想以编程方式在imageView中加载图像)

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {

    // load ipad image

} else {    

    // load iphone image
}

或者你可以制作一个通用的应用程序,只有不同的xibs用于iphone和ipad。但你必须给你命名xibs:MyXib~iphone.xib和MyXib~ipad.xib并将它们链接到同一个类......其余的将自动完成

答案 1 :(得分:1)

Toncean的建议很好。我想补充说,iPad和iPhone之间没有像你想象的那么多的分辨率差异。该垫的分辨率为1024x768。 iPhone 4的分辨率为960x640。因此,通过对两者使用相同的图形,你真的不会浪费太多。你当然想要一套较旧的iPhone的低分辨率图形。但无论您选择哪种应用选项,这都是您必须要做的事情。

答案 2 :(得分:0)

绝对使用通用应用程序。

我会考虑你要拉的图像的数量和大小。如果不是很大,你把它们放在一个框架中,然后根据设备动态调整框架/图像的大小,你可以支持所有不同的设备......这里有一段代码

CGRect imageRect = CGRectZero;
imageRect.origin = imagePoint;
imageRect.size.width  = deviceSpecificImageWidth;
imageRect.size.height = deviceSpecificImageHeight;

[yourImage drawInRect:imageRect];