0

この 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>PageTitle</key>
        <string>Title</string>
        <key>Filters</key>
        <array>
            <dict>
                <key>Filter</key>
                <string>SomeFilter</string>
                <key>Param</key>
                <string>SomeParam</string>
            </dict>
            <dict>
                <key>Filter</key>
                <string>SomeFilter2</string>
                <key>Param</key>
                <string>SomeParam2</string>
            </dict>
        </array>
   </dict>
</array>
</plist>

私のコードは次のとおりです(パスは正しく設定されています):

NSMutableArray* propertyFile = [[NSMutableArray alloc] initWithContentsOfFile:path];
NSMutableDictionary* dict = [propertyFile objectAtIndex:0];
NSMutableArray* filters = [dict[@"Filters"] mutableCopy];

「dict」変数は、「PageTitle」キーである 1 つのキーと値のペアのみを返します。「フィルター」キーが認識されていません。iOS は非常に新しく、これを修正しようとしてタイヤを回転させているようです。

4

1 に答える 1

0

コードを実行したところ、期待どおりにフィルターが取得されました。NSLog でフィルターを印刷してみましたか?

2013-02-26 08:01:38.162 test[24849:c07] filters = (
        {
        Filter = SomeFilter;
        Param = SomeParam;
    },
        {
        Filter = SomeFilter2;
        Param = SomeParam2;
    }
)
于 2013-02-25T21:03:32.687 に答える