Две цели с отдельным .xib(ресурсы изображения с одинаковыми именами)

У меня есть проект с двумя целями, скажем appA и appB.

Обе цели: общий код главного контроллера представления (appViewController) , кроме файлов .xib.

У меня также есть два набора png для каждой цели.

Моя структура файлов/проектов выглядит так:

*common* (members of both targets):
    appViewController.h
    appViewController.m

*appA* (members of target appA):
    appViewController.xib
    set of png files

*appB* (members of target appB):
    appViewController.xib
    set of png files

PNG в обоих наборах имеют одинаковые имена, но они помещаются в отдельные папки/группы, и одна группа является членом одной цели, а другая из другой цели (то же самое с appViewController.xib)

Все работает отлично, за исключением случаев, когда я пытаюсь редактировать файлы .xib в IB - кажется, что запутаться и показать частично изображения с одной цели и отчасти от другой.

Так как .xib несколько сложны ( > 40 изображений), редактирование с частично неправильными изображениями почти невозможно - изображения должны быть помещены на одно фоновое изображение (фоновое изображение также отличается для приложений AppA и APB).

Проблема существует только при редактировании (в IB). После компиляции все изображения в обе цели верны.

Я нашел одно быстрое и грязное решение. Прежде чем начать редактирование одного .xib Я удаляю ссылки на другой набор png. Таким образом, IB показывает правильные изображения для .xib, я редактирую. Я просто импортирую все ссылки (png другого target), когда я закончил.

Я нашел похожий вопрос, на который не ответил.

Интересно, у кого-нибудь есть более чистое решение? Должен быть лучший способ сделать это.

Ответ 1

Пока нет ответов...

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

Если вы хотите отредактировать xix одной цели, вы удалите ссылки ресурсов других целей (pngs).

Затем вы выходите из xcode и снова открываете проект. Пункты будут правильные (поскольку xcode не содержит ссылок на неправильные на данный момент).

Когда вы закончите - reimport удаленные ссылки (позаботьтесь о том, чтобы вы проверьте правильное "целевое членство" ).

Изменить: похоже, это известная проблема с IB - XCode. Пока они не разрешат это, нам просто нужно использовать обходное решение, упомянутое выше.