Индекс 100 за пределами 0 99 ошибка в swipeDetected void

Здесь это работает нормально. Если я попытаюсь провести пальцем вправо (назад) от первого объекта в индексе, ничего не произойдет.

- (void)swipeDetectedRight:(UISwipeGestureRecognizer *)sender
{
if (detailIndex != 0)
    detailIndex--;  

Label.text = [[detailsDataSource objectAtIndex: detailIndex] valueForKey:@"Text"];
}

Но когда я нахожусь на последней записи (номер 100) и свайпаю влево, то вылетает. Вот код для левого:

- (void)swipeDetectedLeft:(UISwipeGestureRecognizer *)sender
{
    if (detailIndex != [detailsDataSource count])
        detailIndex++;


    Label.text = [[detailsDataSource objectAtIndex: detailIndex] valueForKey:@"Text"];
}

И сообщение об ошибке:

-[__NSArrayI objectAtIndex:]: индекс 100 выходит за пределы [0 .. 99]'

Как я могу правильно установить границы, чтобы он не проходил мимо последнего объекта?


person ingenspor    schedule 21.07.2012    source источник