如何解包可选的NSDictionary

时间:2014-09-10 23:50:46

标签: swift

我无法打开可选的NSDictionary。我正在使用NSDictionary,因为这是我从文件路径加载plist时返回的内容。

var dict: NSDictionary? = NSDictionary(contentsOfFile: getFontPath())

assert(dict != nil, "Top level dictionary from plist can't be nil")

var fontArray = dict!objectForKey("fonts") as [NSDictionary]

编译器无法识别dict!作为解包 - 告诉我我应该用a;

分隔序列

问题和解决方案是什么?

1 个答案:

答案 0 :(得分:2)

您在感叹号之后缺少属性访问者(即点):

var fontArray = dict!.objectForKey("fonts") as [NSDictionary]
                     ^

根据您正在做的事情,使用if let可能更有意义,例如:

if let unwrappedDict = dict as? NSDictionary {

}