Iphone 具有int值的属性的值类型不可接受
我处理核心数据,并尝试从WS向核心数据属性(整数32)分配一个int值(id)。该属性是一个NSNumber,当我对其进行编码时:Iphone 具有int值的属性的值类型不可接受,iphone,objective-c,arrays,core-data,nsnumber,Iphone,Objective C,Arrays,Core Data,Nsnumber,我处理核心数据,并尝试从WS向核心数据属性(整数32)分配一个int值(id)。该属性是一个NSNumber,当我对其进行编码时: NSNumber *v = [responseMembers valueForKey:@"id"]; newMember.idMember = v; 此时会出现以下错误: 属性值的类型:property=“idMember”;所需类型= NSN编号;给定类型=uu NSArrayI;值=( 1. 2. 3. 4. 10, 14, 1
NSNumber *v = [responseMembers valueForKey:@"id"];
newMember.idMember = v;
此时会出现以下错误:
属性值的类型:property=“idMember”;所需类型=
NSN编号;给定类型=uu NSArrayI;值=(
1.
2.
3.
4.
10,
14,
17,
5.
6.
7.
8.
9,
11,
12,
13,
15,
16,
18,
19,
"
你能帮我吗 属性idMember是一个
NSNumber
,但由于某种原因,您的键@“id”
的值似乎是一个数组(看起来像是所有id都在其中?)
编辑:
responseMembers是一个NSMutableArray
,您应该不能请求valueForKey
。请尝试以下方法:
foreach (NSDictionary *member in responseMembers)
{
NSNumber *v = [member valueForKey:@"id"];
//do something with this id
}
您正在阅读的json看起来像一个包含许多字典的数组,您的ID更深一层:
[
//first member
{
"content": "some entry",
"id": 5,
// some more attributes
},
//second member
{
"content": "some entry",
"id": 5,
// some more attributes
},
//and so on
]
显示
idMember
的声明。由xcode生成的声明:@property(非原子,retain)NSNumber*idMember;响应成员是什么?WS是:我保留“id”值。为什么是数组而不是NSNumber值@带AFN的Herm:NSURL*url=[NSURL URLWithString:@”http://www.epnet.fr/members.json"]; NSURLRequest*request=[nsurlRequestRequestWithURL:url];AFJSONRequestOperation*操作=[AFJSONRequestOperation JSONRequestOperationWithRequest:请求成功:^(NSURLRequest*请求,NSHTTPURLRResponse*响应,id JSON){NSMUTABLEARRY*响应成员=[[NSMUTABLEARRY alloc]init];响应成员=JSON;}失败:^(NSURLRequest*request,NSHTTPURLResponse*response,NSError*error,id JSON){NSLog(@“失败的响应:%@”,JSON);}];[operation start];
@Benjamin:responseMembers
是许多字典的数组,每个字典都包含一个“id”值。[responseMembers valueForKey:@“id”]
然后是一个包含所有ID的数组。您希望分配给newMember
的众多ID中的哪一个?好的。因此,对于每个成员,我必须创建一个如下的词汇表:NSMutableArray*dicoNew=[responseMembers objectAtIndex:I]
但它不起作用…@Hermno,你必须创建一个类似于NSDictionary*dicoNew=[responseMembers objectAtIndex:i]的字典;
你的类型声明错了。
[
//first member
{
"content": "some entry",
"id": 5,
// some more attributes
},
//second member
{
"content": "some entry",
"id": 5,
// some more attributes
},
//and so on
]