【问题标题】:How to define constant in swift?如何快速定义常量?
【发布时间】:2016-02-18 11:20:47
【问题描述】:

我在互联网上进行了很多搜索,以找到将我的常量 .h 文件快速转换为正确的解决方案。 我已经尝试过这些链接

  1. how to use a objective-c define from swift
  2. Globalconstants file in swift

这两个都用完了,但没有完全解决我的问题。

我只想将这三个#define 转换为 swift 所有其他都可以按照与这些相同的方式进行转换。

  1. #define IS_IPHONE_4S [[UIScreen mainScreen] bounds].size.height == 480
  2. #define IOS7VERSION ([[[UIDevice currentDevice] systemVersion] floatValue]>=7.0?YES:NO)
  3. #define RGBCOLOR(r, g, b) [UIColor colorWithRed:(r)/255.0f green:(g)/255.0f blue:(b)/255.0f alpha:1]

【问题讨论】:

  • 这些不是常量,它们是宏。只需将它们替换为函数即可。
  • constant 是在 swift 中使用 'let' 关键字定义的,但根据上面的代码,如果你想如何在 swift 中定义宏,那么stackoverflow.com/a/24116621/3400991 会有所帮助。谢谢
  • 第一个完全坏了。把你的手机横过来,突然间它就不再是 iPhone 4 了。
  • @gasher729 如果我只使用纵向模式怎么办?
  • @gasher729 转门!!!

标签: ios objective-c swift constants


【解决方案1】:

您可以为此使用关键字let。 例如:

let IsIPhone4S = UIScreen.mainScreen().bounds.height == 480
let IOS7Version = Float(UIDevice.currentDevice().systemVersion) >= 7

对于最后一种情况,你应该使用函数:

func RGBColor(red: CGFloat, green: CGFloat, blue: CGFloat) -> UIColor {
    return UIColor(red: red / 255, green: green / 255, blue: blue / 255, alpha: 1)
}

【讨论】:

  • @VarunNaharia,那你为什么不批准这个答案呢?
猜你喜欢
  • 1970-01-01
  • 2023-03-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多