В файле TemplateChooser.plist расположено описание окна "New Project" выбраного шаблона, а так же набор правил выбора проекта из шаблона в зависимости от выбраных пользователем параметров шаблона.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjwzXLx13kkVHitciOqANq5yX27kOCJyo8noVX0Pwb3fJDybgHXmdq5iKdU5L7sj1p4t3YA_Mt9zz-PIN5MMqGvwSVObBrZeCTOhJVasRACjK9pjmolay4aqiC8PF-r5Ip3qU9fkFqmc4w/s320/TemplateChooser.png)
Приведенный пример представлен хешом из 4-х элементов: "Checkboxes", "OptionsLabel", "PopupMenu" и "TemplateSelection". Первые три отвечают за внешний вид она "New Project" при выбраном шаблоне, TemplateSelection - за правила выбора проекта из шаблона.
Секции Checkboxes это массив чекбоксов, а PopupMenu отвечает за пункты во всплывающем списке при выборе шаблона. OptionsLabel отвечает только за заголовок. Каждый элемент этих массивов имеет уникальный идинтификатор (Key) и строку описания(Title) которая выводится как имя элемента.
TemplateSelection это хеш, который указывает какой проект из шаблона выбрать в зависимости от выбранных параметров в шаблоне. Ключ хеша - это строка составленная из идинтификаторов выбранных опций, значение - имя проекта из шаблона который должен использоваться.
Например в таком варианте:
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilRg2yyJD9OVUADVznOKNLyNoJ-SwludYhm6ybbFKYDNOibfgt5uJ8gtdxICGXMf0J5JbTBEBBrPEGQCp8uC94E4bXcI5iY5rL428btqYAfxDI71JTyWB2Gcf0w3xb6ETExwd6q_y4rv0/s320/xCode_newProject.png)
будет использоваться ключ "iPhoneStorage"
Сам проект в шаблоне тоже немного отличается от стандартного проекта. В папке проекта содержаться два файла: TemplateIcon.icns и TemplateInfo.plist. Первый - иконка шаблона, второй - краткое описание шаблона.
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh8RT0fwpsLYOA5CnoUhlxdobphv4KSzm2HDGnGg1ptoE3TEfoBDqJD5bnQb5VoO61qzIjGzZ1T6kTisuhQ8NPkURL_hHuACM9tyw1M7QkhTtFc3yXGGjRwxEPTEivD5PQiehEGcjom3EI/s320/___PROJECTNAME___.png)
![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiFi6GLuLytRVnv2cih5vu4E9Lp71yVVF5RHbqGIGiZWa1-orgQ7RGWKL4n5oYQnJgznc8q4UgZfYMlZ3gpCSwwtqnAAxQlUk5Sxo-0jNLtqniKlVfb6jiGFm65k0fjAYeXP7afsrrfyz4/s320/TemplateInfo.png)
Комментариев нет:
Отправить комментарий