1
我正在使用iOS SDK 4.2。iOS三态条件运算符实现仅在设备上挑剔吗?
我认为三元条件操作符(?)在模拟器(iPhone4.1,4.2 iPad 3.2,4.2)上的实现方式与实际设备上的不同。因为:
iPad ? xibName = @"MyViewController-iPad" : @"MyViewController";
可以完美运行这些模拟器,但无法在我的iPhone 4(4.1)
在写这篇方式:
xibName = (iPad) ? @"MyViewController-iPad" : @"MyViewController";
允许它在模拟器和设备都工作。
任何人都可以说出原因?这是一个错误吗?是“第二版”更好,我应该总是这样写?
很奇怪编译器如何同时接受和模拟器都可以同时使用,但设备只接受一个......也许是一个苹果检查出错误?
正如我写我DID跑了下面的模拟人生:iPad 3.2,iPad 4.2,iPhone 4.1,iPhone 4.2。它在每种情况下正确加载xib。我知道我最初的代码有点不正确,我感谢你的解释(它清楚地说明了“if to translation”)。无论如何,这是很有趣的模拟人如何评估“正确”的代码和设备没有 – xfze 2011-03-05 19:18:31