我正在尝试创建一个通用应用程序,所以我想知道我是否可以将两个nib文件(1个用于iPad,另一个用于iphone)连接到相同的.h和.m文件?
我有3个文件TestView.h TestView.m和TestView.xib ....如何将TestView_iPad.xib连接到同一个TestView.h和TestView.m?
我是Xcode的新手,我现在正在使用Xcode 4
预先thanx:)
答案 0 :(得分:1)
简短回答:是的。
如果您遵循模型/视图/控制器样式,则可以在iPad笔尖和iPhone笔尖(或故事板)中重复使用相同的View和Viewcontroller(.h和.m)文件。但是,有时您需要使用以下类型的代码:
BOOL iPad = (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad);
if (iPad) {
.... iPad specific code like SplitViewController
} else {
.... iPhone / iPod Touch specific code
}
您可能还需要检查您所在的视图控制器是否在屏幕上(如在iPad上可以在屏幕上显示多个ViewController),在这种情况下使用:
if (self.view.window) {
.... ViewController onscreen so do something otherwise do nothing
}
也不要硬编码设备屏幕的边界。使用以下命令查找屏幕尺寸(以磅为单位):
CGRect screenBounds = [[UIScreen mainScreen] bounds];
希望这有帮助。