使用KVC的NSArray中的NSDictionary

use*_*274 1 cocoa ios

是否可以根据密钥属性名称从CALayer的NSArray中使用KVC获取NSDictionary?我尝试使用-dictionaryWithValuesForKeys :,但是返回一个NSArray。任何的想法?

   NSArray *tempArray = [self.layer.sublayers copy];
   NSArray *ListName = [self.layer.sublayers valueForKey:@"name"];

   NSDictionary *tmpD= [tempArray dictionaryWithValuesForKeys:ListName];
Run Code Online (Sandbox Code Playgroud)

谢谢

Jos*_*ell 5

这是您要问的吗?

NSDictionary * layersByName = [NSDictionary dictionaryWithObjects:[self.layer.sublayers copy]
                                                          forKeys:[self.layer.sublayers valueForKey:@"name"]];
Run Code Online (Sandbox Code Playgroud)

-[NSArray valueForKey:]返回一个数组,该数组是通过valueForKey:使用相同的参数向接收者中的每个对象索要自己的对象而形成的。