是否可以将NSObject转换为Int?我如何实现这一点呢?我看过苹果参考指南,但我似乎不明白如何在NSObject参考下使用intValue。
var intValue: Int32 { get }我从另一个类收到一个保存的HighestScore的NSObject。我想将此HighestScore与当前分数进行比较,如果当前分数大于highestScore,则发送当前分数进行保存。我已经拥有了所有这些,除了我不能比较NSObject (最高分)和我的Int (当前分数)。
下面是我检索HighestScore的方法:
func RetriveHighScore() -> NSObject {
var dataToRetrive = HighScore()
documentDirectories = NSSearchPathForDirectoriesInDomains(.DocumentDirectory, .UserDomainMask, true)
documentDirectory = documentDirectories.objectAtIndex(0) as String
path = documentDirectory.stringByAppendingPathComponent("highScore.archive")
if let dataToRetrive2 = NSKeyedUnarchiver.unarchiveObjectWithFile(path) as? HighScore {
dataToRetrive = dataToRetrive2
}
return(dataToRetrive)
}下面是我如何在另一个类中调用SaveHighScore类和RetrieveHighScore函数:
var bestScore = SaveHighScore.RetriveHighScore如何将and Int值与作为NSObject的bestScore变量进行比较
谢谢你的帮忙
发布于 2014-10-31 00:53:08
如果一个对象是一个“真正的”AnyObject,但是知道它代表一个表示整数的数字序列,那么下面的代码适用于我(Xcode6.1(6A1052c)版):
let oInt = (object as String).toInt() // in my app object has type _TtSQ ,
var intResult = 0
if oInt != nil { intResult = oInt! } // intResult has type _TtSi我试图让它变得更简单,但上面的代码片段是唯一有效的
https://stackoverflow.com/questions/25987702
复制相似问题