Comment accéder correctement aux données du dictionnaire dans plist en objectif c ?
漂亮男人
漂亮男人 2017-05-31 10:36:25
0
1
835
<?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>SE</key>
    <dict>
        <key>l0c0</key>
        <dict>
            <key>x</key>
            <integer>0</integer>
            <key>y</key>
            <integer>0</integer>
            <key>w</key>
            <real>320</real>
            <key>h</key>
            <real>568</real>
        </dict>
    </dict>
</dict>
</plist>

Il existe une plist comme celle-ci Lorsque j'essaie d'accéder à l0c0 comme celle-ci, je rencontre toujours des erreurs

.
NSString *path = [[NSBundle mainBundle]pathForResource:@"文件名" ofType:@"plist"];
NSDictionary *modelList = [NSDictionary dictionaryWithContentsOfFile:path];
for(NSDictionary *model in modelList) {
    NSLog(@"%@", model); //只能打印出 SE
    for (NSDictionary *frame in model) { //出错
        NSLog(@"%@", frame);
    }
}

Comment puis-je obtenir correctement l0c0, x, y et d'autres données ?

漂亮男人
漂亮男人

répondre à tous(1)
曾经蜡笔没有小新

SE Cette paire de clés correspond à un dictionnaire. Bien sûr, vous ne pouvez pas l'extraire en utilisant la traversée de tableaux. Vous pouvez simplement l'obtenir comme ça

.
NSString *path = [[NSBundle mainBundle]pathForResource:@"文件名" ofType:@"plist"];
NSDictionary *modelList = [NSDictionary dictionaryWithContentsOfFile:path];
for(NSDictionary *model in modelList) {
    NSLog(@"%@", model); //只能打印出 SE
    NSDictionary *frame = model[@"l0c0"];
    NSLog(@"%@", frame);    
}
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal