尝试为 iOS 设备创建通用应用程序

发布于 2024-11-27 20:05:18 字数 909 浏览 0 评论 0原文

我已经准备好了 iPhone 应用程序,现在我必须将其设为通用应用程序。

我正在这样做..

self.window = [[UIWindow alloc] init];
self.appFrame = [[UIScreen mainScreen] bounds];
self.window.frame = self.appFrame;
UINavigationController *aNav = [[UINavigationController alloc] initWithRootViewController:self.myViewController];
aNav.view.frame = self.appFrame; 
self.nav = aNav;
[self.window addSubview:nav.view];
[self.window makeKeyAndVisible];

我的项目中没有 MainWindow.xib 。我正在以编程方式创建它。

因此,如果我使用此代码将框架提供给窗口

self.appFrame = [[UIScreen mainScreen] bounds];
self.window.frame = self.appFrame;

,那么 iPad 应该有 (0,0,768,1024) 而 iPhone 应该有 (0,0,320,480)

但是,如果我在 iPad 模拟器上运行我的代码,它会将 self.appFrame 视为 (0,0,320,480)

你们能解释一下问题是什么吗?

以及

如何在不使用 MainWindow.xib 的情况下创建通用应用程序?

I have my iPhone app ready and now i've to make it a Universal app.

I'm doing this..

self.window = [[UIWindow alloc] init];
self.appFrame = [[UIScreen mainScreen] bounds];
self.window.frame = self.appFrame;
UINavigationController *aNav = [[UINavigationController alloc] initWithRootViewController:self.myViewController];
aNav.view.frame = self.appFrame; 
self.nav = aNav;
[self.window addSubview:nav.view];
[self.window makeKeyAndVisible];

I don't have MainWindow.xib in my project. I'm creating it programmatically.

So if i use this code to give the frame to the window

self.appFrame = [[UIScreen mainScreen] bounds];
self.window.frame = self.appFrame;

Then it iPad should have (0,0,768,1024) and iPhone should have (0,0,320,480)

But, if I run my code on iPad simulator it takes self.appFrame as (0,0,320,480)

Can you guys explain me what's the problem??

and

How can i create a Universal app without using MainWindow.xib??

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

寂寞花火° 2024-12-04 20:05:18

在 Xcode 中打开目标的“构建设置”选项卡,并将 目标设备系列 键设置为 iPhone/iPad。然后,您的应用程序将编译为本机 iPad 和 iPhone 应用程序,并且 [[UIScreen mainScreen]bounds] 应返回正确的结果。顺便说一句,您应该使用 [[UIScreen mainScreen] applicationFrame] 而不是窗口框架的边界!

Open the Build Settings tab of your target in Xcode and set the Targeted Device Family key to iPhone/iPad. Then your app compiles as native iPad and iPhone application and [[UIScreen mainScreen] bounds] should return the correct results. Btw, you should use [[UIScreen mainScreen] applicationFrame] instead of bounds for the window frame!

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文