【发布时间】:2014-01-20 10:19:08
【问题描述】:
基本上我有一个复选框列表,我将它们作为复选标记启用并创建一个 plist 文件
结构:-
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict>
<key>Personal</key>
<string>Pizza1</string>
</dict>
<dict>
<key>Medium</key>
<string>Pizza2</string>
</dict>
<dict>
<key>Large</key>
<string>Pizza3</string>
</dict>
</array>
</plist>
并进一步选择相同的项目,我正在撤消复选标记,我正在从数组中删除字典(使用 removeObjectForKey: )并重写 plist 文件。
结构:-
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
<dict/>
<dict/>
<dict/>
</array>
</plist>
所以问题是从数组中删除了对象但字典仍然存在?
如何解决?
【问题讨论】:
-
为什么是一个包含 3 个字典的数组而不是一个字典?
-
使用remove object at index解决问题
标签: ios objective-c nsmutablearray plist nsmutabledictionary