方向に応じて、特定の範囲の長さの配列内の多数の画像をインデックスに渡し、選択的に取得できるこのコードがあります。
縦向きの場合、範囲はインデックスあたり 20 アイテムである必要があり、合計で 43 アイテムがあります。ただし、最後のインデックスを渡すと、[0..42] の境界を超えるインデックス 59 の範囲外の例外が発生します。
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;
どうすればこれを防ぐことができますか?
ありがとう。