Настройка проекта Xcode для добавления нового файла в пользовательский каталог
Как я могу настроить проект Xcode так, чтобы он создавал новые файлы классов (.h/.m) в каталоге Classes и новые файлы интерфейса (.xib/.nib) в каталоге Interfaces?
По умолчанию Xcode добавляет новые файлы в корневой каталог проекта, и мне приходится вручную помещать их в каталоги классов и интерфейсов.
Edit:
Я имею в виду параметр Xcode File > New File.... Я хочу, чтобы новые файлы, созданные из проекта Xcode, автоматически перемещались в соответствующие каталоги, например..h/.m автоматически создаются в каталоге Classes, а .xib автоматически создаются в каталоге Interfaces и т.д. И я имею в виду физические каталоги, а не Xcode "Группы".
Ответы
Ответ 1
Я предполагаю, что вы создали группу (папку) под названием Classes
или что-то вроде этих строк внутри проекта Xcode. Выберите его и сделайте Command + я (или щелкните его правой кнопкой мыши и выберите "Получить информацию" ). Измените параметр "Путь" на то место, где вы хотите создать файлы.
Обратите внимание, что это повлияет только на файлы, созданные на нем. Создание их в другом месте, а затем перемещение их в эту группу не приведет к их перемещению в каталог.
EDIT. Вышеупомянутый ответ относится к Xcode 3. В Xcode 5 вам нужно будет выбрать логическую группу в Навигаторе проектов (первая вкладка навигатора, вызвать ее с помощью ⌘1), а затем осмотрите его с помощью File Inspector (первая вкладка утилиты, поднимите ее с помощью ⌥⌘1). Физическую папку по умолчанию для всех новых файлов можно изменить, щелкнув значок папки ниже раскрывающегося меню Расположение.
Ответ 2
В Xcode 5 автоматически выбирается папка по умолчанию на диске, соответствующая папке проекта на боковой панели для определенных папок, и можно вручную установить эту ссылку.
В моем проекте у меня есть группы боковых панелей для AppName
, AppNameTests
, и я создал себя под названием Shared Components
. Когда я выбираю группу AppName
на боковой панели и создаю класс, диалог "Сохранить" автоматически перебирается в подкаталог AppName
внутри верхнего уровня AppName
на диске и делает то же самое для классов, созданных внутри AppNameTests
.
Мне не удалось заставить Xcode имитировать это поведение с моей настраиваемой группой боковых панелей Shared Components
, несмотря на наличие папки Shared Components
на диске, но я понял, как ее принудить!
Xcode просто нужно было знать, что папка на диске - это то, о чем моя группа боковых панелей. Для этого:
- Откройте папку проекта в Finder
- Перетащите папку, которую вы хотите связать в боковой панели, в организатор проекта.
- Когда Xcode представляет диалог "Добавить файлы", выберите "Создать группы для любых добавленных папок". (Это параметры диалога, которые я выбрал:
![add files dialog]()
Теперь, когда я выбираю эту группу боковых панелей и создаю файл, диалог "Сохранить" начинается в папке, которую я перетащил в боковую панель проекта. Победа!
Изменить: я обнаружил ключи, которые Xcode использует в файле project.pbxproj
для этого: если вы измените папку name
на path
, т.е.
path = "Shared Components";
что в основном делает Xcode, когда вы добавляете папку в проект в качестве ссылки на группу. (Вы также можете использовать клавиши name
и path
, если вы хотите, чтобы боковая панель name
отличалась от на диске path
.)