Xcode показывает старые, удаленные файлы XIB - PullRequest
16 голосов
/ 22 сентября 2010

Я искал по всему и не нашел никакой помощи ...

Я создал небольшое тестовое приложение с двумя UIViewControllers и соответствующими им xibs. Все было хорошо, затем я внес некоторые изменения в оба xibs, но когда я собираю и запускаю, я получаю старые представления. Я попытался удалить папки сборки, запустить в симуляторе и устройстве, очистить все цели, и все те же старые, сломанные xibs, которые я полностью изменил, все еще отображаются. Я перезапустил все приложения Xcode и даже мой компьютер.

Раздражаться!

РЕДАКТИРОВАТЬ: Я никогда не выяснил, в чем проблема. По сути, после того, как я создал проект, он запомнил первые сделанные мной xib-файлы и не узнавал их изменений. Если бы я сказал контроллеру представления загружаться с другого действительного имени пера, он бы пожаловался, что старого там нет.

Я переустановил XCode, и теперь все снова работает. Sheesh.

Ответы [ 13 ]

13 голосов
/ 22 сентября 2010

Попробуйте удалить приложение из симулятора (нажмите и удерживайте значок приложения, чтобы перейти в режим покачивания, затем нажмите X у приложения) и со своего устройства.Затем позвольте Xcode переустановить его.

7 голосов
/ 17 марта 2012

просто очистите сборку используя

Продукт -> Чистый

меню.

2 голосов
/ 11 октября 2012

Я только что обнаружил (и исправил) связанную проблему - проблему, которая демонстрирует сходные симптомы, но чья основная причина немного отличается.

В частности, симптомы, которые я наблюдал, были в том, что мое приложение для iPad первоначально отображало старуюизображение раскадровки для первой страницы и после небольшой задержки откроет самое последнее отредактированное содержание раскадровки.Я выполнил большинство из вышеуказанных махинаций, но безрезультатно.

Проблема в том, что загрузчик iPad сначала просто тупо загружает образ запуска вашего приложения на экран.Вы обычно настраиваете этот образ как часть ранней административной настройки приложения в XCode.Во время запуска, в то время как конечный пользователь обдумывает контент и размышляет о том, где можно прикоснуться к экрану, приложение тем временем безумно готовится, отархивирует xib / nib / storyboard и выполняет реальный работа по подготовке.

В идеальной ситуации предоставляемое начальное изображение является попиксельным и генерируется процессом nib-unarchiving-process.Однако, , если вы забыли обновить образ запуска после обновления раскадровки , вы увидите сдвиг изображения при завершении разархивирования.

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

2 голосов
/ 31 августа 2011

Просто немного измените ваши файлы XIB, затем сохраните их, xCode обнаружит изменение (дату последнего изменения в файловой системе), а затем загрузит xib с его фактического пути, а не из пути кеша: P

1 голос
/ 10 марта 2012

У меня только что была эта проблема, просто удалите приложение из симулятора.
Тогда сделайте чистку на вашем проекте.
В xCode, перейдите в меню продукта, выберите Очистить.

Или просто нажмите Shift + Command + K!

1 голос
/ 29 ноября 2011

У меня была эта проблема, и это было результатом того, что xcode продолжал копировать ранее скомпилированные xib - даже если исходный файл был удален, кеш сборки не был. Product> Очистить, а затем перекомпилировать - решено.

1 голос
/ 22 сентября 2011

Я знаю, что Стив нашел обходной путь, но проблема вовсе не в файлах XIB. Xcode не обновляет файл YouApplication-info.plist до

Если вы откроете его, вы увидите строку: Основное имя основного файла nib . Вы должны изменить значение, чтобы отразить желаемое имя файла NIB

1 голос
/ 06 марта 2011

Не уверен, помогает ли это, но у меня только что было это.

Мне потребовались дни, чтобы решить это. В моем случае я улучшил существующий файл Xib. Изменения, которые я применил в конструкторе интерфейсов, никогда не появлялись в приложении.

В конце концов я нашел причину. У меня был выход представления FilesOwner, настроенный на подпредставление под видом сверху. Когда я улучшил вид, я сделал это как расширение для вида сверху. Таким образом, изменения никогда не появлялись при запуске приложения.

Смена выходного вида на правильный вид (вид сверху в моем случае) сделала свое дело, и все заработало нормально ...

0 голосов
/ 30 апреля 2019

Удалены производные данные, очищены проект и сборка. Старый XIB был волшебным образом удален. : D

0 голосов
/ 17 октября 2012

Просто предположение, не уверен, действительно ли это вызвало это: я закончил XIB, который отлично работал в симуляторе и на реальном устройстве.Затем я изменил его, чтобы он был локализован в Xcode 4.5.1.Изменения, которые я сделал после этого, не были синхронизированы с устройством, пока я вручную не удалил приложение с устройства и не переустановил с помощью Xcode.

...