Раскадровки Xcode 7.3, Swift 2.2 очень медленные

У меня есть огромное приложение в работе, и после обновления до Xcode 7.3 делать что-либо в раскадровке - это как патока!

Примерно месяц назад у меня была примерно такая же скорость с одной ОГРОМНОЙ раскадровкой, поэтому я разделил проект на 5 отдельных раскадровок, и аллилуйя, в сто раз быстрее! Но теперь, после обновления, даже деление на 7; медленно, как может быть! Я собираюсь сделать резервную копию, затем попытаться воссоздать одну большую, затем снова создать резервную копию, затем снова разделить - чтобы посмотреть, поможет ли это; но я сомневаюсь.

Кто-нибудь знает, как это исправить, или что не так с последним обновлением?


person Aroniousness    schedule 31.03.2016    source источник
comment
У меня все хорошо. Мой Mac быстро открывает раскадровки. Хотя, если в раскадровке используются классы IBDesignable, это занимает 1-2 секунды. для загрузки, но в остальных случаях это быстро. Я считаю, что ваш MAC устарел.   -  person HarshIT    schedule 31.03.2016
comment
2015 MacBook Pro 2,2 ГГц Intel Core i7 16 ГБ 1600 МГц DDR3 с использованием El Capitan… Вероятно, нет   -  person Aroniousness    schedule 31.03.2016
comment
LOL, ваша конфигурация кажется самой последней, но вы сталкиваетесь с проблемами, а моя старше, чем ваша, но работает быстрее с огромными раскадровками. :Д :Д   -  person HarshIT    schedule 31.03.2016
comment
Используете ли вы библиотеки IBDesignable в своем проекте?   -  person HarshIT    schedule 31.03.2016
comment
Вероятно, нет (поскольку я не знаю, что такое библиотеки IBDesignable - ха-ха). У меня есть около 150 классов, около 35 из которых являются контроллерами представления. Я стараюсь помещать как можно больше в код, а не в раскадровку, но я знаю, что у меня есть пара VC, которые нуждаются в серьезной переработке, чтобы уменьшить количество ненужных представлений (например, вместо этого использовать программные представления коллекции). Должно быть что-то глупое и неясное, что вызывает проблему   -  person Aroniousness    schedule 31.03.2016
comment
Обновление: до сих пор я собрал все раскадровки вместе и забавно, работа в раскадровке больше не медленная, ОДНАКО, она настолько большая, что вход или выход из раскадровки занимает 3 минуты. И, конечно же, минимум 3 минуты на компиляцию stink'n. Итак, обмен пока. Теперь идет часть 2: снова разберите на несколько раскадровок... посмотрите, сработает ли это. Вернемся к вам (... всем, кто заинтересован или с той же проблемой, что и у вас)   -  person Aroniousness    schedule 31.03.2016
comment
В Xcode 7.3 я все еще сталкиваюсь с проблемами. У меня 45 UIViewController в Main.StoryBoard, и вставка UILabel в любой из UIStoryBoard занимает 1-2 часа. Итак, это очень очень медленно :(   -  person Sohil R. Memon    schedule 01.04.2016
comment
Я разделил на 8 раскадровок, и большинство из них теперь управляемы, но все еще далеко не так быстро, как до 7.3. И по крайней мере одна раскадровка (одна с MKMap) МУЧИТЕЛЬНО медленная. ... сейчас выходные, поэтому у меня есть семейные обязанности, но в понедельник я планирую разобрать эту точку зрения и посмотреть, смогу ли я найти виновного.   -  person Aroniousness    schedule 02.04.2016


Ответы (1)


Ну, не лучшее решение, но все, что я могу определить, это то, что; если количество элементов и ограничений в представлении превышает определенное количество (с использованием Xcode 7.3), скорость внезапно ужасно падает. Итак, что мне пришлось сделать с этой последней раскадровкой (8 из 8), так это взять скользящую боковую панель, полную кнопок и подпредставлений, и поместить ее в контейнерное представление, чтобы я мог дать ему собственный VC и тем самым сделать его отдельной 9-й раскадровкой.

Не лучшее решение, это точно, тем более, что мне пришлось привязать все кнопки и методы к родительскому контроллеру представления. Мне повезло в этом случае, поскольку родительское представление (моя основная карта приложения) является единственным экземпляром, поэтому я смог сослаться на него при запуске и просто добавить ссылку к своим прежним методам. Если бы это было не так, я думаю, мне пришлось бы сделать какой-то серьезный протокол/делегирование.

Итак, правильное решение (или «исправить», если это делает Xcode) все еще не найдено :)

person Aroniousness    schedule 03.04.2016