Adding iPad XIB to a View Based Application Template Application in XCode 4

微笑、不失礼 提交于 2019-12-11 17:52:26

问题


I've created a View Based Application in XCode4; when creating the application I selected iPhone as the Device Family:

The application was created with the following files:

I designed the UI on the TestushViewController.xib file and without adding any code in the Delegate files, the application is uploading immediately to the TestushViewController.xib view and I'm very happy about it.

Now I want to add an iPad xib. How do I do that?

(I knew how to do it in XCode 3, but I used some code in the Delegate file, and now if I try to use the same code it doesn't work because the template default implementation works differently - Apple uses @class TestushViewController and self.window.rootViewController = self.viewController and it goes directly to the iPhone.xib. I don't know how to go around it without changing the entire thing to the way it was done in XCode3)


回答1:


You'll need to structure your code in a similar way that the Window Template does. The file structure that template uses when the "Universal" option is ticked at creation is:

App Name/
  AppNameAppDelegate
  iPhone/
    AppNameAppDelegate_iPhone
    MainWindow_iPhone.xib
  iPad/
    AppNameAppDelegate_iPad
    MainWindow_iPad.xib

The iPhone and iPad AppDelegates are simply subclasses of the AppNameAppDelegate

@interface YourAppNameAppDelegate_iPhone : YourAppNameAppDelegate {}

In your target summary you can set what .xib file is initially loaded for each device. It is called the "Main Interface" and has a pulldown menu.

Quite frankly, if you're wanting to do a universal app (iPhone + iPad) it's probably easier just to start with the Window Template and add in your view controllers instead of starting with the View template and trying to change it up.



来源:https://stackoverflow.com/questions/6522810/adding-ipad-xib-to-a-view-based-application-template-application-in-xcode-4

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!