
(像你以前能够使用#define)?
主要是想知道如何区分OS X或iOS。我没有发现这个问题。
如果您正在为iOS和OS X(也可能现在用于watchOS和tvOS)构建,那么您至少建立两次代码:每个平台一次。如果您希望在每个平台上执行不同的代码,则需要构建时间条件,而不是运行时检查。Swift没有预处理器,但它具有条件构建伪指令 – 并且在大多数情况下,它们看起来像C等效。
#if os(iOS) || os(watchOS) || os(tvOS) let color = UIcolor.redcolor()#elseif os(OSX) let color = NScolor.redcolor()#else println("OMG,it's that mythical new Apple product!!!")#endif 您还可以使用构建配置来测试架构(x86_64,arm,arm64,i386)或-D编译器标志(包括由标准Xcode模板定义的DEBUG标志)。
请参阅使用Swift与Cocoa和Objective-C中的Preprocessor Directives。
(如果要在运行时区分哪种iOS设备,请使用UIDevice类,就像您在ObjC中一样。查看对您而不是设备重要的设备属性通常更有用和安全名称或成语 – 例如使用特征和大小类来布局您的UI,查询OpenGL以获取所需的GPU功能等)
总结以上是内存溢出为你收集整理的如何从Swift确定设备类型? (OS X或iOS)全部内容,希望文章能够帮你解决如何从Swift确定设备类型? (OS X或iOS)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)