繁体   English   中英

iOS:应用通用概念

[英]IOS: app universal concepts

我正在启动一个必须用于iPhone和iPad的项目...您可以告诉我,这很容易,而且我可以创建一个“通用”项目。 但是我有一个关于“愚蠢”问题的“愚蠢”问题。 在一个通用项目中,一个类有两个.xib(iPhone和iPad),并且内部代码验证我是否正在使用一个或另一个

if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
{
     // The device is an iPad running iPhone 3.2 or later.
}
else
{
     // The device is an iPhone or iPod touch.
}

好?

但是您知道,在iPad的单个视图中,我可以显示iPhone可以一次显示的许多视图。 例如,我对他们的班级有两种看法:

FirstView.h-FirstView.m-FirstView_iPad.xib-FirstView_iPhone.xib

SecondView.h-SecondView.m-SecondView_iPad.xib-SecondView_iPhone.xib

对于iPhone,这不是问题,但是对于iPad? 在iPad上的视图中,我可以放置第一个和第二个ViewController,如果我为两个ViewController设置了两个不同的类,那么组织起来就不容易...您对此有解决方案吗? 还是最好的解决方案是建立两个独立的项目iPhone和iPad? 谢谢

所以,是的,我总是使用一个theViewController.h和一个theViewController.m,并且我有一个用于iPhone的theViewController.xib和一个单独的用于iPad的xib。 如果将iPad xib命名为ViewController〜ipad.xib结尾,则操作系统将自动识别XIB。 您必须在“检查器”区域的“接口”构建器中将theViewController〜ipad.xib的类设置为与iphone xib相同的类,即该类称为theViewController,然后您可以连接在中定义的插座。 h和.m也是一件很棒的事情,当您按视图时,仅将iPad xib命名为〜ipad.xib结尾,因为操作系统可以识别〜ipad.xib扩展名并按正确的视图进行推送,所以不必在推送之前检查idom在设备上..希望对您有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM