2013-04-19 4 views
1

Вот что меня смутило:Appcelerator Titanium Интернационализация не работает правильно

Я недавно начал изучать Appcelerator Titanium. Я создал несколько небольших приложений как с обычным проектом, так и с использованием сплава, поэтому я понимаю, по крайней мере, основы.

Одна вещь, которую я просто не могу получить, - это папка/файлы i18n.

Вот что ив сделал: - Создать «Default Project» - добавить папку в корневой директории «i18n» - добавить «ан» и «эс» папка «i18n» - добавить «strings.xml «для обеих новых папок. - добавлено:

<?xml version="1.0" encoding="UTF-8"?> 
    <resources> 
     <string name="welcome_message">Welcome TEST</string> 
    </resources> 

к обоим strings.xml, за исключением эс строк я ставлю "ES Welcome TEST". - В Resources -> app.js я изменил «Я Window 1» в L («») welcome_message - Ран приложение

Оба нормальные и легированные версии просто показать пустой экран. Я бы хотел, чтобы мое приложение для сплавов работало больше всего, но из того, что я понимаю, код локализации должен работать одинаково в обоих приложениях. В сплаве я могу просто положить его в стиле.

Любые указатели были бы замечательными! Я посмотрел на другой пост, заявляя, что он не работает, но все они были либо синтаксическими ошибками, либо просто настроили неправильно. Я скопировал их код и имею ту же самую проблему, что он не работает, поэтому у меня есть ощущение, что я пропустил шаг новичков.

- Вот несколько скриншотов, я только что создал совершенно новый регулярный проект (не сплав), добавил код выше и попытался использовать L ('welcome_message'), чтобы не повезло. Я попытался установить все на новом ПК, чтобы убедиться, что я не запутался на моем основном компьютере. enter image description here enter image description here

+0

Вы пробовали очистить и построить? –

+0

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

ответ

2

Heres ответ:

https://wiki.appcelerator.org/display/guides/Internationalization

Заканчивается по умолчанию файл манифеста не настроен по умолчанию, чтобы позволить локализацию, если вы решите вкладками проект.

С уважением, глупо, если вы спросите меня.

+0

Это не сработает, даже после прохождения руководства. Я создал папку i18n, а также strings.xml и объявил L («пароль»), что оставляет пользовательский интерфейс пустым на симуляторе для перевода. – obaid

0

Для темы плаката:

Мой новый файл string.xml:

<?xml version="1.0" encoding="UTF-8"?> 
<resources> 
    <string name="welcome_message">Don't Help Austin</string> 
    <string name="user_agent_message">user agent set to</string> 
    <string name="format_test">Your name is %s</string> 
    <string name="base_ui_title">Base UI</string> 
    <string name="controls_win_title">Controls</string> 
    <string name="phone_win_title">Phone</string> 
    <string name="platform_win_title">Platform</string> 
    <string name="mashups_win_title">Mashups</string> 
    <string name="ordered">Hi %1$s, my name is %2$s</string> 
</resources> 

Скриншот моего нелегированной эксперимента:

enter image description here

Для тех, кто хочет ответьте на вопрос в теме, это возможный ответ ниже.

Моя папка i18n находится на том же уровне иерархии, что и приложение и плагины, поэтому моя не находится внутри папки приложения, как и остальные ресурсы Alloy.

index.xml

<Alloy> 
    <Window class="container"> 
     <Label id="label" onClick="doClick"></Label> 
    </Window> 
</Alloy> 

index.tss

".container": { 
    backgroundColor:"white" 
}, 
"Label": { 
    width: Ti.UI.SIZE, 
    height: Ti.UI.SIZE, 
    color: "#000", 
    text: L("welcome_message") 
} 

strings.xml

<?xml version="1.0" encoding="UTF-8"?> 
<resources> 
    <string name="welcome_message">Welcome to Kitchen Sink for Titanium</string> 
    <string name="user_agent_message">user agent set to</string> 
    <string name="format_test">Your name is %s</string> 
    <string name="base_ui_title">Base UI</string> 
    <string name="controls_win_title">Controls</string> 
    <string name="phone_win_title">Phone</string> 
    <string name="platform_win_title">Platform</string> 
    <string name="mashups_win_title">Mashups</string> 
    <string name="ordered">Hi %1$s, my name is %2$s</string> 
</resources> 

Когда я поместил L ("welcome_message") внутри index.xml, это не сработало.

+0

Мне нравится ваше чувство юмора :), но ответ, который вы публикуете, не помогает мне с моей конкретной проблемой. Что вы опубликовали из многих руководств, я могу загружать проекты прямо из github, запускать их, и они тоже не работают. То, что ие пытались сегодня вечером. Есть ли настройка в затмении, которую мне нужно установить или, может быть, в менеджере эмулятора? – Silent

+0

@ Мартин, вы сказали: «Когда я разместил L (« welcome_message ») внутри index.xml, это не сработало». Это вопрос или ответ? Потому что я также нуждаюсь в решении для него в проекте сплава, так как он не работает – obaid

+0

Вы сделали шаги, которые подробно описал оригинальный плакат? «Вот что я сделал: - Создайте« Проект по умолчанию »- добавьте папку в корневой каталог« i18n »- добавьте папку« en »и« es »в« i18n »- добавьте« strings.xml »в обе эти новые папки» – Martin

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