我有一个字典,其中包含从 JSON 返回的数据填充的键值对。我想做的是使用字典来填充 UITableView。
我有这个表结构:
[产品名称] 按 [制造商名称]
这意味着键是产品名称,值是制造商名称。我需要获取键的名称和值的名称。如何才能做到这一点?没有for循环有可能吗?
我有一个字典,其中包含从 JSON 返回的数据填充的键值对。我想做的是使用字典来填充 UITableView。
我有这个表结构:
[产品名称] 按 [制造商名称]
这意味着键是产品名称,值是制造商名称。我需要获取键的名称和值的名称。如何才能做到这一点?没有for循环有可能吗?
我会使用这种enumerateKeysAndObjectsUsingBlock:
方法。以下代码构建您需要的字符串列表。
NSMutableArray *names = [NSMutableArray array];
[dictionary enumerateKeysAndObjectsUsingBlock: ^(NSString *key, NSString *object, BOOL *stop) {
[names addObject[NSString stringWithFormat:@"%@ By %@",key, object]];
}];
您可以使用keyEnumerator
ofNSDictionary
和为每个键查找值。这可能看起来像这样:
for (NSString *p in dict)
{
NSString *m = [dict objectForKey:p];
// do something with (p,m)
}
您不应该担心避免for
-loops。毕竟,像for
循环这样的事情总会在下面的某个地方发生。
如果您的密钥是来自 json 的动态密钥,那么您可以使用
NSArray *keys = [dictionary allkeys];
然后在 table View Cell for row at index path 方法中,您可以使用相应的键及其值填充表格视图。
NSArray * keys = [results allKeys];
for (int i = 0;i<[keys count];c++){
NSString* productName = [key objectAtIndex:i];
NSString* manufacturerName = [results objectForKey:productName];
}
希望这可以帮助...
我假设名称为字符串,您可以根据您的情况更改类型..