繁体   English   中英

如何从嵌套在plist文件的字典中的数组访问随机值?

[英]How do I access random values from an array nested in a dictionary from plist file?

基本上,我需要从plist中获取随机字母和与该字母相关的点。 老实说,我不确定我是否已以最佳方式设置了plist,但我之前从未使用过plist: 在此处输入图片说明

一旦开始工作,我将在每个字母关联点的plist中添加CZ。 我刚刚创建了一个基本的单词拼贴游戏,尝试学习Sprite Kit。

到目前为止,我已经能够访问plist文件,但是没有得到任何随机的Letter和Points的运气。我尝试的所有方法都遇到各种错误。

Here's my code so far to access the plist:
        NSString* fileName = @"letters.plist";
        NSString* filepath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:fileName];

        NSDictionary* lettersPlist = [NSDictionary dictionaryWithContentsOfFile:filepath];
        NSDictionary* letters = lettersPlist[@"letters"];

那么,如何从该plist中获得随机字母及其要点呢? 还有更好的方法吗?

只需获取介于0和letters数组中项目数之间的随机数,然后取出该信息即可。 例如,继续执行代码:

u_int32_t bound = (u_int32_t)[letters count];
NSDictionary* randomLetterInfo = letters[arc4random_uniform(bound)];
NSString* randomLetter = randomLetterInfo[@"Letter"];
NSString* points = randomLetterInfo[@"Points"]; // points are a string in your plist

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM