我正试图使用plist
来保存一系列字典。除了尝试遍历数组中的每个元素之外,一切似乎都正常。在这种情况下,我使用NSArray
s和NSDictionary
s。
在下面的示例中,albumInfo
是一个NSDictionary
。键"Title"
和字符串对象链接。我正在使用一个名为addAlbumInfo
的方法,它的参数都是String
s,除了"price:"
请帮忙。
var pathToAlbumsPlist:NSString = NSBundle.mainBundle().pathForResource("AlbumArray", ofType: "plist");
var defaultAlbumPlist:NSArray = NSArray(contentsOfFile: pathToAlbumsPlist);
for albumInfo:NSDictionary in defaultAlbumPlist {
self.addAlbumWithTitle(
albumInfo["title"], //Says it is not convertable to a string
artist: albumInfo["artist"],
summary: albumInfo["summary"],
price: albumInfo["price"].floatValue,
locationInStore: albumInfo["locationInStore"]
);
}
最佳答案
由于albumInfo是NSDictionary,因此它只能包含任何对象,这意味着它不能包含Swift字符串(即struct)。如果addAlbumWithTitle需要一个字符串,而您试图向其传递AnyObject,则会出现此错误。您可以将albumInfo["title"]
转换为这样的快速字符串:
albumInfo["title"] as String
关于ios - swift :遍历plist,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24727308/