Подтвердить что ты не робот

Проблема автосохранения в Xcode 8

=== РЕДАКТИРОВАТЬ ========

Эта проблема теперь решена в Xcode 8.1. Я проверил.

================

Я не знаю, как правильно настроить. Итак, я использую функцию авторазрешения в моих приложениях, и это хорошо для меня. Я могу выполнить все мои требования без каких-либо проблем.

Теперь в Xcode 8 я перенес свой старый быстрый проект в swift 3. Теперь возникает проблема.

Storyboard SS

Посмотрите на изображении, я установил Autoresizing, и его работа отлично работала без проблем во всех устройствах до сих пор, и этот проект работает в AppStore, так что я не могу показать интерфейс или раскадровку.

Теперь мне нужно сделать некоторое обновление в проекте. Итак, теперь я работаю в Xcode 8. Но моя автоматизация не работает должным образом, так как все элементы управления входят в центр и пользовательский интерфейс испорчен.

Выходное изображение

И проблема сохраняется и в устройстве. Я также проверил в симуляторе и устройстве. Но проблема есть и там. Любые предложения и помощь будут оценены. Спасибо заранее.

EDIT:

Вчера есть проблема только во время выполнения, но сегодня раскадровка также изменила представления, подобные этому изображению

Изображение раскадровки

Это означает, что весь дизайн пользовательского интерфейса испорчен. Это странно.

4b9b3361

Ответ 1

Одиночная проблема. Как моя точка зрения, эта проблема возникает, когда мы используем автоматизацию и устанавливаем только внутренний метод autoresizingMask для любого контроллера вида. Как,

введите описание изображения здесь

Если мы используем также метод авторезинирования границ в то время, не сталкиваемся с этой проблемой. Как,

введите описание изображения здесь

Я не знаю, что это реальная ошибка xcode 8 или удалить эту функциональность в xcode 8.

Итак, наконец, мое предложение состоит в том, что нам нужно использовать автоматическую компоновку в xcode 8.

Ответ 2

Пожалуйста, попробуйте снять отметку с авторезистора из xib или раскадровки. И в viewDidLoad установите [_scrollView setAutoresizesSubviews:YES];

Попробуйте, если это решит вашу проблему.

Изменить: В случае раскадровки снимите флажок Resize view from NIB.

Ответ 3

Я не уверен в раскадрах, но я нашел временное решение для xib файлов. На панели "Утилиты" (правая панель) выберите вкладку "Инспектор файлов". В разделе "Интерфейс компоновщика интерфейса" выберите файл для открытия в "XCode 7.x". Он попросит вас подтвердить, что вы не хотите использовать функции XCode 8, сохраните файл и закройте его.

введите описание изображения здесь

Ответ 4

i также сталкивается с той же проблемой для scrollView в Xcode8

У меня есть одно решение для работы с scrollView

сначала возьмите простой UIView и добавьте все компоненты, которые вы хотите добавить в scrollView, и дадите этому компоненту автозаказ

а также взять один scrollView и программно установить рамку представления, а также установить scrollView contentSize и добавить ваше представление в scrollView

как мудрый, в моем случае я добавляю этот код в viewDidLoad для быстрого проекта

// add view to scrollview

self.scrollObjForNextAppointment.contentSize = CGSize(width:self.scrollObjForNextAppointment.frame.size.width,height:410)

self.viewForScrollContent.frame = CGRect(x:0,y:0,width:self.scrollObjForNextAppointment.frame.size.width,height:410)

self.scrollObjForNextAppointment.addSubview(self.viewForScrollContent)

он работает для меня, спасибо!

Ответ 5

Xcode 8 beta 2 решил эту проблему!! Я уже проверил сейчас!

Ответ 6

Обновить проблема, похоже, исправлена ​​в Xcode 8.1


Имея ту же проблему, и я обнаружил, что нарушителем здесь является элемент UIScrollView. Просто переместите все за пределы вашего скроллера, и вы увидите, что все работает отлично, как раньше.

Это означает, что одним из возможных способов решения проблемы является размещение вашего прокручиваемого контента в обычном UIView, а затем его программное программирование с помощью UIScrollView во время выполнения.

Ответ 7

Решено, сняв флажок "Автоматическое изменение размеров подсмотров" на ScrollView

введите описание изображения здесь

Ответ 8

Модератор любезно удалил мой ответ здесь как дубликат, поэтому см. мой ответ по адресу:

Авторизация в iOS 10 не работает

В ответ на макс, да, изменение размера вложенных объектов может быть болью. Поэтому я предложил добавить в представление прокрутки один "контентный вид" и переместить все существующие подпрограммы внутри этого представления. Autosize subviews внутри представления содержимого так же, как вы делали с scrollview, и автоматическое определение содержимого для прокрутки.

Это представление содержимого, которое вы затем изменяете в viewDidLayoutSubviews.

И снова "представление содержимого" внутри конструкции scrollview является в значительной степени стандартным способом получения прокрутки с автоматическим масштабированием с использованием автозапуска, поэтому его следует считать лучшей практикой.

Этот метод описан здесь...

https://spin.atomicobject.com/2014/03/05/uiscrollview-autolayout-ios/

Мой метод кажется немного запутанным, но я смог запланировать раскадровку примерно с дюжиной сцен и Vc примерно через 15 минут. Для восстановления всего, используя автоматическую компоновку, потребовалось бы намного, гораздо больше времени.

Ответ 9

Apple просто вышла с XCode 8.2, которая исправляет эту проблему для меня. Я использую XCode 7.3.1 для дизайна интерфейса параллельно 8.1, но теперь я могу использовать 8.2 без каких-либо проблем.

Раскадровка обновляется с шириной и высотой кадров, но для размещения новой функции "Просмотр как:". Хотя это, похоже, не влияет на работу на устройстве/симуляторе.

Любопытно, что исправление не отмечено в примечаниях XCode 8.2.

Оригинальный ответ здесь