|
32
|
| drootang · 技术社区 · 16 年前 |
|
|
1
24
我这样做是为了让代码在3.1.3和3.2中编译:
我也在这里写了一篇关于它的博客: http://www.programbles.com/2010/04/03/compiling-conditional-code-in-universal-iphone-ipad-applications/ |
|
|
2
14
这是有条件编译的,因此您仍然可以为3.0 sim卡构建。然后检查UIDevice类是否响应选择器。如果这两个都失败了,那就不是iPad了。 |
|
|
3
7
这是我们的解决方案 运行时 检测:
这与使用#if/#ifdef的区别在于,这是运行时测试,而#if是编译时测试。
如果您的问题是编译时错误,那么您只需根据最新版本的SDK进行编译(另请参阅 How to access weak linked framework in iOS? ). |
|
|
4
5
模拟器 无法针对3.2SDK进行编译并使用3.1.3或更早版本的模拟器。 |
|
|
5
5
|
|
|
6
2
然后使用下面的检查
也有一些关于检查iphone5的定义
|
|
|
7
0
这是完全错误的。可能是的 运行 |
|
|
8
0
UI\u USER\u INTERFACE\u IDIOM()和UIUserInterfaceIdiomPad可以在iOS3.2及更高版本上使用,重要的部分是“向上”。当然。iOS3.2只适用于iPad,但iOS4.0及更高版本在iphone和iPad上都可以运行,所以检查并不像你想象的那样毫无意义。 |