我在基于分组表视图的工作中工作,因为我希望将NSarray的值转换为整数,以指定numberOfRowsInSection的section值,但是它会抛出以下代码。
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
int sec;
if (section == 0){ sec=6; }
else if(section == 1){ sec=6; }
else if(section == 2){
sec=[[rsvn_detail objectAtIndex:0] objectForKey:@"totalrecord"];
}
return sec;
}
感谢你的建议,任何人都可以帮助你提前表达
此致 Sathish所在
答案 0 :(得分:3)
NSArray和NSDictionary只能保存Objective-C对象。 int
不是对象。这个数字可能被包装为NSNumber。要将NSNumber转换回int
,请致电-intValue
:
sec = [[[rsvn_detail objectAtIndex:0] objectForKey:@"totalrecord"] intValue];
// ^^^^^^^^
当然,请确保rsvn_detail
确实是NSDictionary的NSArray。如果没有-intValue
不会导致异常,则只会引发编译器警告/错误。
答案 1 :(得分:0)
有什么例外?似乎
[[rsvn_detail objectAtIndex:0] objectForKey:@"totalrecord"];导致问题。