Iphone 为通用应用程序制作两个单独的应用程序代理?
我应该为一个通用应用程序创建两个单独的应用程序代理吗?一个myAppDelegate,然后是myAppDelegate\u iPhone和myAppDelegate\u iPad,它们是什么子类?原因是iPhone应该有NavController的IBOutlet,而iPad应该是UISplitViewController 另外,我如何区分iPhone和iPad之间的操作。例如,iphone上的按钮可能会推动视图,但在iPad上,我希望有一个小窗口弹出窗口,而不是全屏推动。我是否只是使用if/else语句来检查iPad(通过uiswitchviewcontroller)是否正确,然后从那里开始Iphone 为通用应用程序制作两个单独的应用程序代理?,iphone,objective-c,xcode,ipad,Iphone,Objective C,Xcode,Ipad,我应该为一个通用应用程序创建两个单独的应用程序代理吗?一个myAppDelegate,然后是myAppDelegate\u iPhone和myAppDelegate\u iPad,它们是什么子类?原因是iPhone应该有NavController的IBOutlet,而iPad应该是UISplitViewController 另外,我如何区分iPhone和iPad之间的操作。例如,iphone上的按钮可能会推动视图,但在iPad上,我希望有一个小窗口弹出窗口,而不是全屏推动。我是否只是使用if/e
if (NSClassFromString(@"UISplitViewController") != nil && UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
//currentDeviceType = iPad;
}
else {
//currentDeviceType = iPhone;
}
这个问题似乎也有相似之处 苹果公司的这份文件可能也会有帮助
无需接受两个单独的应用程序委托。您可以根据以下条件编写代码
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){}
这将自动检测设备。要在设备上启用旋转,您需要返回“是”
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// Return YES for supported orientations
return YES;
}
用于所有视图控制器
您还应该将支持的方向添加到xcode 4下的plist或info中
还要记住,stack overflow更喜欢在问题主题更改时问一个新问题:)谢谢,你能告诉我如何快速在iPad上为我的ViewController启用旋转吗?对不起,我不太熟悉:PSo我可以在1个文件中将UINavigationController和UISplitScreenController添加到我的应用程序代理中?是的,你可以。只需设置适当的出口并相应地维护应用程序委托代码。