Iphone sdk 3.0 如何在不更改代码或不制作新应用程序的情况下将iphone应用程序转换为ipad?

Iphone sdk 3.0 如何在不更改代码或不制作新应用程序的情况下将iphone应用程序转换为ipad?,iphone-sdk-3.0,Iphone Sdk 3.0,我有一个iphone应用程序,但我想让它在ipad上运行。在ipad上,它显示在非常小的屏幕上。我不知道如何制作ipad应用程序,所以我无法为ipad应用程序编写代码,有人能告诉我,在不更改代码的情况下让这个应用程序在ipad上运行吗 在XCode中,进入项目菜单,选择“升级iPad的当前目标”,即可获得满意答案。选择“通用应用”选项。这将升级您的目标,而无需更改任何代码。打开新的iPad笔尖文件,确保一切看起来都很好,然后你就可以开始了 (编辑:您需要手动升级每个nib文件,并调整其大小,为i

我有一个iphone应用程序,但我想让它在ipad上运行。在ipad上,它显示在非常小的屏幕上。我不知道如何制作ipad应用程序,所以我无法为ipad应用程序编写代码,有人能告诉我,在不更改代码的情况下让这个应用程序在ipad上运行吗


在XCode中,进入项目菜单,选择“升级iPad的当前目标”,即可获得满意答案。选择“通用应用”选项。这将升级您的目标,而无需更改任何代码。打开新的iPad笔尖文件,确保一切看起来都很好,然后你就可以开始了

(编辑:您需要手动升级每个nib文件,并调整其大小,为iPad版本做好准备。)

也就是说,要让事情看起来完美,你需要编写一些iPad代码。要实现这一点,请创建名为
CommonMacros.h
的文件并添加:

#ifndef __IPHONE_3_2    // if iPhoneOS is 3.2 or greater then __IPHONE_3_2 will be defined

typedef enum {
    UIUserInterfaceIdiomPhone,           // iPhone and iPod touch style UI
    UIUserInterfaceIdiomPad,             // iPad style UI
} UIUserInterfaceIdiom;

#define UI_USER_INTERFACE_IDIOM() UIUserInterfaceIdiomPhone

#endif // ifndef __IPHONE_3_2
现在,如果您想在iPhone和iPad之间进行代码分支,只需添加

#import "CommonMacros.h"
.m
文件的顶部。然后,在代码中的任何地方,都可以使用以下方法:

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

举个例子,如果您想在iPad版本中添加一些额外的图形元素,或者不想让iPad版本能够访问iPhone的某些功能,您可以这样做。

无法理解您的代码在哪里编写此类代码以及如何编写+1pankaj,让我更新我的答案以更具体一些。对不起!抱歉,我说的太蠢了,这是行不通的,我们必须在这里//ipad代码或这里//iphone代码中写什么哦,实际上你不需要做任何事情。按照我的第一个指示进行转换。我的意思是,如果你遇到需要为iPad编写一些代码,但又不想影响iPhone版本的情况,你可以使用这种方法正确地进行分支。不过,在你需要它之前不要担心它!ipad屏幕显示一个1x和2X图标以改变屏幕大小