我有这段代码,它允许我传入一个索引,并有选择地检索数组中一定范围长度的多个图像 - 取决于方向。
在纵向时,每个索引的范围应该是 20 个项目,而我总共有 43 个项目。但是,当我传入最后一个索引时,我得到索引 59 超出 [0..42] 范围的超出范围异常。
NSArray *tempArray = [self imageData];
UIDeviceOrientation devOr = [[UIDevice currentDevice] orientation];
int kItemsPerView;
if (UIDeviceOrientationIsPortrait(devOr)) {
kItemsPerView = 20;
}else {
kItemsPerView = 14;
}
NSRange rangeForView = NSMakeRange( index * kItemsPerView, kItemsPerView );
NSArray *subArray = [[tempArray subarrayWithRange:rangeForView] retain];
NSMutableArray *imagesForView = [NSMutableArray arrayWithArray:subArray];
[subArray release];
return imagesForView;
我怎样才能防止这种情况?
谢谢。