2013-09-19 5 views
-1

У меня есть переменные параметры таким образом:Как я могу поместить переменную в string.xml?

String result = " Non in carica"; 
String resultusb = " No"; 

-- 
-- 

if (isCharging) { 
result = " In carica"; 
} 

if (usbCharge){ 
resultusb = " Si"; 
} 

Переменная result или resultusb предполагая два значения не в зависимости от situation..there это не TextView только это, только одна переменных с несколькими значениями. Мне нужно перевести их, поэтому я должен поместить их в strings.xml .. Как я могу это сделать? Как я могу их перевести?

+0

Читайте и узнаете: http://developer.android.com/guide/topics/resources/string-resource.html. Ответ здесь слишком короткий - только одна ссылка - поэтому я пишу комментарий. –

+0

Как я могу это рассмотреть? массив? Или количество? –

+0

Есть несколько уже переведенных строк для вас в android.R.string (да и нет, например, нет). Кажется, это не массив, но я точно не понимаю ваш вопрос. –

ответ

1

Что-то вроде это ...

В Рез/значений/strings.xml:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="not_charging"> Non in carica</string> 
    <string name="is_charging"> In carica</string> 
    <string name="usb_no"> No</string> 
    <string name="usb_yes"> Si</string> 
</resources> 

И в вашем коде:

String result = getString(R.string.not_charging); 
String resultusb = getString(R.string.usb_no); 

-- 
-- 

if (isCharging) { 
result = getString(R.string.is_charging); 
} 

if (usbCharge){ 
resultusb = getString(R.string.usb_yes); 
} 
+0

безупречное спасибо! –

+0

Ummm ... Разве это не то, что я сказал? – codeMagic

0

Если я вас правильно понимаю, ответ вы не можете. Вы не можете поместить их в свой файл strings.xml во время выполнения. resources не может быть изменен после компиляции.

Вы можете поместить их в файл strings.xml перед компиляцией затем получить их во время выполнения с чем-то вроде

if (isCharging) { 
    result = getResources().getString(R.String.charging); // assuming charging is the name in strings.xml 
} 

if (usbCharge){ 
    resultusb = getResources().getString(R.String.si); // assuming si is the name in strings.xml 
} 

Если это не то, что вы просите, пожалуйста, более ясно

+0

«result» и «resultusb» могут иметь 2 значения. Так что в файле strings.xml мне нужно, например, предположить, что зарядка или 'In carica' или' Non in carica' .. Но это та же переменная. Теперь понимаю? –

+0

Может быть. Создайте 4 переменных в 'strings.xml'. Если 'isCharging', то' result = getResources(). GetString (R.String.inCarica); else result = getResources(). getString (R.String.nonCarica); '. Понимаю? – codeMagic

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