Как изменить местоположение сгруппированного (локализованного) файла с абсолютного на относительный путь в XCode 4? - PullRequest
10 голосов
/ 11 августа 2011

У меня проблемы с привязкой всех путей к файлам в XCode 4.

У меня есть несколько infoPlist.strings и CustomLocalizable.strings (для разных языков), сгруппированных вместе (XCode делает это автоматически). При просмотре инспектора файлов («Просмотр»> «Утилиты»> «Показать инспектор файлов») для этих файлов (за исключением английского языка, который является языком по умолчанию), расположение - «Абсолютный путь».

Проблема заключается в том, что раскрывающееся меню «Расположение» для этих файлов в «Инспекторе файлов» выделено серым цветом , оно отключено. Это не позволяет мне изменить местоположение файла с абсолютного пути к описание относительного пути.

Что мне нужно сделать, чтобы все пути к файлам в группе были относительными?

Я уже пытался изменить путь к группе файлов, например, «относительно группы» или «относительно проекта». Для группы я также установил относительный путь, щелкнув по маленькому значку, и раскрывающийся список местоположений в инспекторе файлов.

Я уже какое-то время искал решение, и буду рад, если кто-нибудь поможет мне ответить на поставленный выше вопрос.

Спасибо!

Ответы [ 3 ]

8 голосов
/ 13 февраля 2012

Судя по вашим ответам, мой собственный ответ в комментариях работает. Так что вот как официальный ответ:

  1. Выберите один из локализованных файлов в группе (например, infoPlist.strings, CustomLocalizable.strings): щелкните файл в дереве проекта

  2. В инспекторе файлов на панели локализации удалите все языки, для которых файлы имеют абсолютный путь, с помощью кнопки «-».

  3. Снова добавьте языки, используя «+» >> «Добавить все» или определенный язык. Сгруппированные и локализованные файлы снова появятся в дереве. В инспекторе файлов вы увидите, что местоположение изменилось на «Относительно группы»

2 голосов
/ 01 декабря 2011

Спасибо, ответ, предоставленный в качестве комментария в вопросе, работал для меня в Xcode 4.2.Это определенно ошибка со стороны Apple, которая устанавливает все записи файла локализации как абсолютные пути.

Другой вариант ... найдите в вашем project.pbxproj файл строк и найдите абсолютные пути.Вы можете просто отредактировать записи в текстовом редакторе, чтобы они выглядели так:

9E0D4EC0148727D300456F82 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = "<group>"; };

Если у кого-то есть тонны файлов и метод пользовательского интерфейса делает это слишком медленно, попробуйте!

0 голосов
/ 16 июня 2013

Вы можете изменить путь к файлу, не удаляя его и повторно добавляя его:

  1. В Project Navigator найдите отсутствующие файлы (выделены красным цветом, если они не найдены) и выделите один из них..
  2. Показать File Inspector
  3. Под Location изменить Absolute Path на Relative to group или Relative to project,
  4. Затем рядом с путем есть немногобелый значок, щелкните его и выберите местоположение файла.
...