objective-c - 从plist文件读取字典的奇怪行为

标签 objective-c ios plist nsmutabledictionary

当我为而不是空的字典读取plist时,在我的模型类的NSMutableDictionary属性中至少有一个键值对,一切正常。
我可以添加,删除修改可变字典。

但是当字典为空

并且您可以看到带有以下标记的plist:
<dict/>
然后,即使我的属性具有NSMutableDictionary指针,创建的对象也不可变。

当我尝试在其中为特定属性设置对象时,
它给我这个错误,说:
'NSInternalInconsistencyException', reason: '-[__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object'

最佳答案

NSMutableDictionary *mutable = [yourApparentlyMutableDictionary mutableCopy];

关于objective-c - 从plist文件读取字典的奇怪行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10734573/

相关文章:

iphone - 触发本地通知时显示自定义 View 时出现问题

swift - Cocoa NSTask 输出提取

ios - 在 Xcode 中创建和编辑 plist 文件的步骤

ios - Swift:遍历 plist

ios - 旋钮旋转手势识别器

ios - 用于签署查询请求的 Amazon Web Services Objective-C SDK

ios - 引用 socket 未显示在 xcode 6 中

iphone - 在 iphone 中加载默认图像后如何在启动画面上播放视频?

iphone - 如何处理来自 UIImagePickerController 的多个图像?

ios - 如果由弹出窗口作为模型呈现,UITableViewController 会失去滚动功能