诠释?到 CLBeaconMajorValue
Posted
技术标签:
【中文标题】诠释?到 CLBeaconMajorValue【英文标题】:Int? to CLBeaconMajorValue 【发布时间】:2014-06-02 23:57:44 【问题描述】:我今天从 apple swift 开始(和其他许多人一样;))我在阅读 plist 时遇到了困难。
我从我的 info.plist 中读取了一个 plist 条目,它是一个 NSArray,其中每个条目都是一个字典。
let regionsToMonitor = NSBundle.mainBundle().infoDictionary["Regions"] as Array<Dictionary<String,AnyObject>>
for regionToMonitor in regionsToMonitor
...
每个地区的一个关键是一个专业。在 objC 术语中是一个 NSNumber。我把它读成:
let major: Int? = regionToMonitor["major"] ? regionToMonitor["major"]!.integerValue : nil;
现在我需要它作为 CLBeaconMajorValue
所以我尝试使用as
将其转换为那个
clRegion = CLBeaconRegion(proximityUUID: uuid,
major: major! as CLBeaconMajorValue,
identifier: identifier)
不起作用。 UUID 和标识符确实有效(我已经检查了另一个构造函数,但不是 init
这也不好
let m = major! as CLBeaconMajorValue
如何转换我的 NSNumber / int?到 CLBeaconMajorValue
【问题讨论】:
【参考方案1】:你必须转换值。
由于CLBeaconMajorValue
是UInt16
typealias
,你可以这样做:
let m = UInt16(major!)
你甚至可以这样做:
let m = CLBeaconMajorValue(major!)
【讨论】:
为什么选择 CLBeaconMajorValue(x)? 让 m = 专业!作为 CLBeaconMajorValue -- 那是我的尝试以上是关于诠释?到 CLBeaconMajorValue的主要内容,如果未能解决你的问题,请参考以下文章