types'Int32'不符合协议'AnyObject'Swift?

我有一个Model, NSObject子类,如下所示。

 class ConfigDao: NSObject { var categoriesVer : Int32 = Int32() var fireBallIP : String = String () var fireBallPort : Int32 = Int32() var isAppManagerAvailable : Bool = Bool() var timePerQuestion : String = String () var isFireballAvailable : Bool = Bool () } 

我已经下载NSMutableData并使用NSJSONSerialization从它做出JSON

我的代码是

 func parserConfigData (data :NSMutableData) -> ConfigDao{ var error : NSError? var json = NSJSONSerialization.JSONObjectWithData(data, options: NSJSONReadingOptions.MutableContainers, error: &error) as NSDictionary var configDao : ConfigDao = ConfigDao() println("Print Config \(json)") configDao.categoriesVer = json["CategoriesVer"] as Int32 configDao.fireBallIP = json["FireBallIP"] as String configDao.fireBallPort = json["FireBallPort"] as Int32 configDao.isAppManagerAvailable = json["IsAppManagerAvailable"] as Bool configDao.timePerQuestion = json["TimePerQuestion"] as String configDao.isFireballAvailable = json["IsFireballAvailable"] as Bool return configDao } 

我得到错误

 Type '`Int32`' does not conform to protocol 'AnyObject' 

我在哪里使用Int32

下面的图片

在这里输入图像说明

谢谢

Int32不能从Objective-C NSNumber自动桥接。

看到这个文件 :

所有以下types都自动桥接到NSNumber:

  • 诠释
  • UINT
  • 浮动
  • 布尔

所以你必须这样做:

 configDao.categoriesVer = Int32(json["CategoriesVer"] as Int) 

顺便说一句,为什么你使用Int32 ? 如果你没有任何特定的原因, 你应该使用Int

Interesting Posts