有多个Xib 文件如何将iPone项目转到iPad平台是本文要介绍的内容,主要是是解决将iPone项目转到iPad平台,如果有多个Xib文件,该怎么办?来看本文如何来解决。
1、首先,不能把问题考虑复杂了,这个转化其实很简单。
2、将iphone版本升级成universal版本, 方法不赘述。
3、在.plist里,应该会有main nib file base name这个key,对应MainWindow,就是iphone程序的入口;
同时会有main nib file base name(iPad)这项,如果没有,就自己建立个,universal版本会多出来这项,选择它就是了),然后需要自己建立个xib文件,来作为iPad入口,比如说MainWindow-iPad
技巧:已经有iPhone版的xib文件, 打开这个xib文件,然后file==>Create iPad version (using autosizing masks), 会自己生成一个iPad版本的 untile.xib的文件,然后另存为你自己的名字的iPad的xib就可以了。然后拖到并加入到你的项目里。
以上是解决程序入口的问题。
4、对于其他的xib文件,比如说AController.xib,
首先,用上面的技巧生成AController-iPad.xib并加入到你的项目里;
然后找到它对应类文件AController.m,
- - (void)viewDidLoad
- {
- if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
- {
- [[NSBundlemainBundle] loadNibNamed:@"AController-iPad"owner:selfoptions:nil];
- }
- else
- {
- [[NSBundlemainBundle] loadNibNamed:@"AController"owner:selfoptions:nil];
- }
- [superviewDidLoad];
- //your other init code here
- }
加入红色部分的code即可,那个loadNibNamed:根据具体的来改。
5、对于内部的其他代码,若iPhone与iPad版本有区别的话,继续用好上面的if 判断语句就可以了。
- if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)
- {
- //iPad version code here
- }
- else
- {
- //iPhone/touch version code here
- }
6、强烈建议写程序时候对于控件位置和大小,别用具体的数字, 而用size.weight, size.height这样的写法,或者单独开个头文件define出去,不然一个一个的改尺寸大小会很郁闷的。
iphone-->iPad的改动,难倒是不难,主要是要细心而已。
暂时只想到这么多了,以后再补充。
小结:有多个Xib 文件如何将iPone项目转到iPad平台的内容介绍完了,希望通过本文的学习能对你有所帮助!