在Swift中将anyObject转发为String

时间:2014-08-26 08:42:02

标签: ios swift

我正在使用Xcode6-Beta6并希望在屏幕上显示来自NSArray的项目。

从代码中提取如下

    var task: AnyObject?  = categoriesForOption.valueForKey("task")!
    var taskName: UILabel = view.viewWithTag(10) as UILabel
    taskName.text         = task as? String

任务包含(     茶 ) taskName包含nil

我已经搜索了解决方案并找到了很多答案,但它们似乎都没有用。上面的摘录是我最接近解决我的问题。 希望有人可以帮助我,因为我正撞在墙上。

2 个答案:

答案 0 :(得分:0)

你可以尝试:

var task: String!  = String(categoriesForOption.valueForKey("task"))
taskName.text = task

答案 1 :(得分:0)

我猜你的意思是NSDictionary而不是NSArray

我认为这种方式更明确:

var task = categoriesForOption.valueForKey("task") as? String

类型推断会使任务成为String? - 如果值对应于"任务"它将填充一个值。密钥存在于字典中,如果它是一个字符串。它是nil否则。