Сбой iOS5 — setZoomScale. Происходит только в iOS5

#ios5

#ios5

Вопрос:

У меня проблема с iOS 5. Приложение вылетает при попытке выполнить [scrollView1 setZoomScale:1.1 animated:NO]; . Это происходит только в iOS 5. Код корректно работает во всех предыдущих версиях iOS. Приложение вылетает на симуляторе. Я еще не пробовал на устройстве.

Код прост, как показано ниже:

 // choose minimum scale so image width fits screen
float minScale  = [scrollView1 frame].size.width  / ([scrollView1 frame].size.width-200);
[scrollView1 setMinimumZoomScale:minScale];
scrollView1.maximumZoomScale = 3;
scrollView1.minimumZoomScale = 0.5;
[scrollView1 setZoomScale:1.1 animated:NO];
[scrollView1  setContentOffset:CGPointZero];
  

Сбой происходит, когда он вызывает метод делегирования, который возвращает.
scrollview объект:

 - (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {
    return scrollView;
}
  

Если я прокомментирую setZoomScale , сбой исчезнет. Пожалуйста, помогите, если есть какой-либо обходной путь.

Ответ №1:

После тестирования выяснилось, что он также сбой на устройстве с iOS5. Наконец, я создал представление и поместил его в ScrollView, а в viewForZoomingInScrollView вернул новый вид для масштабирования. Я думаю, что на данный момент это обходной путь.