У меня есть папка res/values
, содержащая файл strings.xml
и папку res/values-XX
, содержащую файл strings.xml
(для каждого из языков XX
я поддерживаю). На данный момент все мои файлы strings.xml
содержат одни и те же строки (одни и те же имена строк, разные строковые значения). Есть ли способ добавить строку в файл res/values/strings.xml
, не добавляя его ко всем моим файлам res/values-XX/strings.xml
и таким образом, что приложение будет выбирать эту строку по умолчанию, независимо от языка языка? В настоящий момент компилятор прерывает и жалуется, что строка не была переведена для каждого из моих поддерживаемых языков.Как добавить строку только в папку значений по умолчанию?
ответ
«Компилятор» не будет «отменен», потому что у вас нетранслированная строка. Вы можете получить ошибки lint, но ant clean debug
, ant clean release
, и их эквиваленты Eclipse работают нормально. Убедитесь, что вы используете текущую версию инструментов SDK (и плагин ADT, если вы используете Eclipse).
Чтобы избавиться от ошибок линта, имеет свой <resources>
элемент, где появляется непереведенная строка выглядит следующим образом:
<resources xmlns:tools="http://schemas.android.com/tools" tools:ignore="MissingTranslation">
res
папка содержит данные, которые только для чтения. Для получения дополнительной информации обратитесь к Документу разработчиков Android для Providing Resources и Accessing Resources.
Это не отвечает на мой вопрос. Я не хотел добавлять строки во время выполнения. Извиняюсь за двусмысленность в моем вопросе. См. Ответ CommonsWare. –
Lint ошибки и предупреждения не позволяют компилятору компилировать, но вы всегда можете их очистить и скомпилировать. Вы также можете указать Lint, чтобы игнорировать все недостающие переводы.
Вы можете использовать LINT ПРЕдуПРЕждЕНИя вид проинструктировать Lint игнорировать определенные ошибки или предупреждения в определенных областях (конкретные строки, файлы или весь проект). Все эти инструкции будут автоматически помещены в lint.xml
в ваш проект.
Android рекомендует размещать непереводимые строки в файле donottranslate.xml
. Lint будет всегда игнорировать, что для этого нет переводов.
Вы также можете создать другой файл XML с любым другим именем и просто добавить инструкцию для Lint, чтобы игнорировать, что строки в этом файле не имеют переводов.
Помните, что вы не только один файл strings.xml
. Это стандартная новичка, но если у вас есть лот строк, вы можете организовать их в несколько XML-файлов.
Пятно на. Именно то, что я искал. Большое спасибо: –