1

Я пытаюсь следовать советам в руководстве Apple I18N и L10N. У меня есть уже существующий проект, из которого я (давно) удалил папку Base.lproj. Зачем? Потому что у меня нет Main.storyboard или LaunchScreen.xib. Обе эти вещи обрабатываются программно.Xcode Base Интернационализация без Main.storyboard

Однако у меня есть большое количество вспомогательных раскадровки, включая WatchKit Interface.storyboard. Когда я нажимаю + в разделе «Локализация проекта (не целевой), Xcode представляет диалоговое окно, в котором только файл Interface.storyboard. Ни один из многих других.

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

ответ

1

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

  1. Выберите файл раскадровки в левой панели (Project навигатор)
  2. Нажмите значок Doc (инспектор файлов) в правой панели
  3. Нажмите Localize ...

Это создаст новую базу. proj в любой папке, содержащей раскадровку. Если вы похожи на меня, вы сделали много папок-факторинга. Xcode сочетается с этим.

Затем вернитесь к разделу «Локализация проекта» и нажмите +, чтобы добавить локали. Xcode создает извлечение строк из раскадровки и создает новые папки для соответствующих файлов .strings.

Смежные вопросы