использование iOS 6.0 SDK и сборка для iOS 5 Target приводит к сбою UIScrollView setMinimumZoomScale при работе на симуляторе iOS 5

я обновился до Xcode 4.5 и начал использовать iOS SDK 6.0:

У меня есть универсальное приложение, которое было разработано с Xcode 4.4 и iOS SDK 5.1

и он работал на всех протестированных устройствах и симуляторах без каких-либо глюков.

в надежде, что он продолжит работать на iPhone 5, я хотел предоставить правильный образ запуска и позволить ему работать.

многие части приложения работают без изменений, но одна часть этого не делает: изображение, которое я поместил в UIScrollView, не панорамируется. это всегда работало ранее, но не на симуляторе iOS 6.

к настоящему моменту проблемы, хотя: когда я начал работать на симуляторах iOS 5.0 или iOS 5.1, в моем журнале отладки я увидел исключение, которое выдается следующим образом:

-[NSKeyValueMethodSetter setMaximumNumberOfTouches:]: unrecognized selector sent to instance 0x6ddab20

Сканирование стека показывает, что код, пытающийся выполнить этот вызов.UIScrollView setMinimumZoomScale

мой код для вызова setMimimumZoomScale выглядит следующим образом:

    CGFloat widthScale = self.scrollView.bounds.size.width / self.image.size.width;
    CGFloat heightScale = self.scrollView.bounds.size.height / self.image.size.height;

    // just reset the zoom scales; leave center and everything else where possible
    self.scrollView.minimumZoomScale = MIN(1.0, MIN(widthScale, heightScale));
    self.scrollView.maximumZoomScale = 4.0;

выброшенное исключение (и последующий сбой) возникает при первом вызове setMimimumZoomScale с сообщением, отмеченным выше.

Я предполагаю, что Xcode 4.5 использует код для setMinimumZoomScale, который вызывает отправку этого сообщения, которое, вероятно, существует в библиотеке для iOS 6, но никогда не было в iOS 5.

другие видят похожую проблему?

Кстати, я не трогал мои файлы .storyboard, поэтому они все равно будут работать без autoLayout.

Должен ли я вернуться и установить Xcode 4.4 рядом с Xcode 4.5, чтобы иметь возможность продолжать поддерживать мое рабочее приложение?

Ответы на вопрос(1)

Ваш ответ на вопрос