Задать вопрос
deleted-mezhevikin
@deleted-mezhevikin

Проблема с autoloyaout в ios7?

При попытке создать проект с одним UIViewController/UINavigationController возникла следующая проблема:

Если в проекте указать target от ios5 и отключить autoloyaout (так как он работает начиная с ios6) в interface builder, то после запуска выплевывается исключение:

-[NSKeyedUnarchiver decodeInt32ForKey:]: value for key (UIKeyAutomaticallyAdjustsScrollViewInsets) is not an integer number'



Делал поиск по официальному форуму разработчиков apple.

Нашел похожие вопросы, и два решения проблемы, которые меня не устраивают.

1. Делать два одинаковых storyboard, один с включенным autoloyaout другой с выключеным и загружать один для ios5, другой для ios 6-7.

2. Отказаться от поддержки ios5, и сделать минимальный таргет ios6.


Что думаете по этому поводу?

Как будете решать эту проблему в своих проектах?

www.dropbox.com/s/txw2wwrqogs4tb1/MyUI.zip — код тестового проекта

Xcode 5 beta, sdk 7.0
  • Вопрос задан
  • 3854 просмотра
Подписаться 2 Оценить Комментировать
Решения вопроса 1
deleted-mezhevikin
@deleted-mezhevikin Автор вопроса
Всем спасибо за ответы.
Проблема как и предполагал LIAL в xcode 5.
Он создает неправильно проект.

Если создать проект в xcode4 а потом открыть в xcode5, то все ок.
Такие вот костыли.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 4
LIAL
@LIAL
Думаю не стоит заморачиваться на iOS5.
по статистике доля сидящих на iOS версии ниже 6.0 для iPhone менее 6% (Пруф) — так что можно использовать autolayout. если все таки эти 6% важны, то можно использовать старые и не очень добрые struts&springs
Ответ написан
timokhin
@timokhin
iOS developer
Если есть лояльная аудитория, сидящая на старых девайсах, то разумным будет обеспечить совместимость, даже если придется сториборды дублировать. Для новых проектов — зависит от специфики проекта, вопрос индивидуальный.
Ответ написан
думаю можно открыть storyboard в текстовом редакторе, найти там вхождения
<viewController automaticallyAdjustsScrollViewInsets="NO" ...>

и попробовать поменять YES/NO на 1/0, раз он ожидает там число

или совсем удалить этот параметр
Ответ написан
Комментировать
а вы какую демку смотрите в ECSlidingViewController? Теоретически, TransitionFun должен наверное работать, а BasicMenu крешиться
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы