0

在 iOS 编程方面,我完全是个菜鸟。我正在尝试编写一个程序,我可以在其中插入、编辑和删除基于 plist 文件的 tableviewcell:

<?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">
<dict>
    <key>Factors</key>
    <array>
        <string>Time</string>
        <string>Cost</string>
    </array>
    <key>Rank</key>
    <array>
        <string>10</string>
        <string>9</string>
    </array>
</dict>
</plist>

时间与10有关 成本与9有关

我希望能够在不同的视图控制器中删除、添加和编辑这些值。

我做的正确吗?我是否以某种方式设置了我的 plist,将来会破坏我的代码?我希望能够在我的编辑视图控制器中单击单元格并能够编辑它们。

当我删除时,我想让它更新 plist 文件。我希望能够将因子显示为文本标签,将排名显示为详细标签。

我是否正确构建了 plist?

我已经制作了另外两个用于编辑和添加的视图控制器。如何通过为 segue 做准备来管理 plist?我希望能够将行变量传递到字段中,以便以后可以对其进行编辑。

我是否必须制作另一个 NSObject 类来对此进行建模?

我现在超级困惑@.@。这样做的正确方法或更聪明的方法是什么?

到目前为止,这就是我连接故事板的方式: 在此处输入图像描述

有这方面的教程吗?

这是我正在使用的仓库:https ://github.com/rlam3/test.git

谢谢您的帮助!!!

4

1 回答 1

4

我可能会将 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>Factor</key>
            <string>Time</string>
            <key>Rank</key>
            <string>10</string>
        </dict>
        <dict>
            <key>Factor</key>
            <string>Cost</string>
            <key>Rank</key>
            <string>9</string>
        </dict>
    </array>
</plist>

我假设 plist 存储在设备上,如果是这样,您可以使用:

+ (id)arrayWithContentsOfFile:(NSString *)aPath

将 plist 读入数组。

对其进行变异后,您可以通过在变异数组上使用将其写回 plist 文件:

- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)flag

您可以找到有关这些方法的更多信息@https ://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSArray_Class/NSArray.html

于 2013-02-19T21:18:38.083 回答