1

При локализации раскадровки в Xcode 6 созданный файл storyboard.strings содержит все в раскадровке, хотя многие из элементов уже имеют IBOutlets, которые будут заполнять элементы во время выполнения (например, UILabels в UITableViewCells). например:Локализация раскадровки iOS xcode 6

/* Class = "UILabel"; text = "Cuisine "; ObjectID = "Leo-99-CcC"; */ 
"Leo-99-CcC.text" = "Cuisine "; 

/* Class = "UILabel"; text = "Comments:"; ObjectID = "SY6-eR-QpE"; */ 
"SY6-eR-QpE.text" = "Comments:"; 
  1. Есть ли способ, я могу определить, какие элементы должны быть локализованы и какие из них следует игнорировать?

  2. Есть ли способ, я могу сделать эти комментарии более информативными. Приведенный выше пример дает очень мало условий для работы переводчика по сравнению с версией с использованием NSLocalizedString(@"key", @"Clear comment for translator about context"). Я предполагаю, что я мог бы добавить более описательный текст держателя места в раскадровке редактора, но это не чувствует, как правильное решение при работе с AutoLayout ограничений и т.д.

ответ

0

Я нашел немного Hacky пути к отфильтруйте элементы, которые вы не хотите локализовать в раскадровки, но затем сделайте раскадровки немного сложнее в использовании. Если вы удалите текст в UILabel (например), когда XLIF будет экспортирован, он не будет содержать этот элемент пользовательского интерфейса. Это работает для ярлыков в UITableViewcell, который будет заполняться во время выполнения, но затем упрощает компоновку и ограничение ограничений.

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