1

我从事基于分组表视图的工作,因为我想将 NSarray 的值转换为整数以指定 numberOfRowsInSection 的部分值,但它会引发对放置以下代码的期望。

- (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;
}

任何人帮助纠正它提前谢谢你的建议

问候, 萨蒂什

4

2 回答 2

3

NSArray 和 NSDictionary 只能保存 Objective-C 对象。Anint不是对象。该数字很可能被包装为 NSNumber。要将 NSNumber 转换回int,请调用-intValue

 sec = [[[rsvn_detail objectAtIndex:0] objectForKey:@"totalrecord"] intValue];
 //                                                                 ^^^^^^^^

当然,请确保rsvn_detailNSDictionary 确实是一个 NSArray。没有-intValue不会导致异常,只会引发编译器警告/错误。

于 2010-07-15T11:03:31.887 回答
0

有什么例外?看来

[[rsvn_detail objectAtIndex:0] objectForKey:@"totalrecord"];
导致问题。

于 2010-07-15T11:00:30.867 回答