2015-06-06 2 views
0

Я добавил перевод в файл strings.xml, так что теперь у меня есть 2 strings.xml файлов, один на иврите и один на английском (оригинал). После того как я сделал это, вдруг в файле MainActivity.java, каждый раз, когда есть в коде R, он показывает в красном цвете и говоритAndroid Studio не может разрешить символ «R» после перевода strings.xml

Cannot resolve symbol 'R' 

Я пробовал все ответы в других постах, и это не помогло:

  • Я пробовал очистить Грейдл и синхронизировать его.
  • Там нет ошибок XML
  • После добавления import android.R; ошибка исчезает, но теперь же ошибка отображается для всех имен XML-файл (например toastText = getString(R.string.negativeCups);, negativeCups в красном цвете и показывает эту ошибку.
  • Я попытался перезагрузить Android Студия
  • Я попытался добавления import com.howtoevery.justjava.R;
  • Там нет файлов с именем прописными буквами в папке Res
  • Я попытался изменить compileSdkVersion, buildToolsVersion и targetSdkVersion
  • Я попытался добавить import android.R.* и вообще, я пробовал каждый ответ в сообщении this, но ничего не работало для меня.

Код для оригинального strings.xml файла:

<resources> 
    <string name="app_name" translatable="false">Just Java</string> 

    <string name="hello_world">Hello world!</string> 
    <string name="action_settings">Settings</string> 
    <string name="quantity">Quantity</string> 
    <string name="order">Order</string> 
    <string name="add">Add another cup of coffee to your purchase</string> 
    <string name="reset">Reset calculation</string> 
    <string name="decrease">remove 1 cup</string> 
    <string name="ordering">You are going to order</string> 
    <string name="ordering_cups_price">cups of coffee at a price of</string> 
    <string name="empty_order">You can't order nothing, please buy at least 1 cup of coffee</string> 
    <string name="resetted">Cups of coffee is already reset.</string> 
    <string name="negativeCups">You can't have negative number of cups of coffee</string> 
</resources> 

Код для перевода:

<?xml version="1.0" encoding="utf-8"?> 
<resources> 
    <string name="add">תוסיף עוד כוס קפה להזמנה</string> 
    <string name="decrease">תסיר כוס אחת</string> 
    <string name="hello_world">שלום עולם!</string> 
    <string name="order">הזמן!</string> 
    <string name="quantity">כמות</string> 
    <string name="reset">אפס כמות</string> 
    <string name="action_settings">הגדרות</string> 
    <string name="ordering">אתה עומד להזמין</string> 
    <string name="ordering_cups_price"> כוסות קפה במחיר של </string> 
    <string name="empty_order">מה אתה פסיכי? אי אפשר להזמין כלום</string> 
    <string name="resetted">משעמם לך? לחצת כבר איפוס יא חופר</string> 
    <string name="negativeCups">טוב מה נהיה?? אתה רוצה כבר למכור כוסות?</string> 
</resources> 

Update: Я даже удалил папку с файлом локализованный strings.xml и все еще у меня такая же проблема.

+0

Вы проверяете наличие ошибок на ресурсе? или попытаться восстановить проект ур. –

+0

вам нужно проверить свои файлы ресурсов.Могут быть некоторые ошибки формирования или ресурсов. – Boggartfly

+0

показаны оба файла strings.xml. –

ответ

1

Итак, после того, как вы попытались так много вещей, связанных с этой проблемой R, я посмотрел на logCat и увидел, что в файле strings.xml есть проблема. Видимо, я забыл добавить знак бежать, и это вызвало проблемы, так это то, что у меня было раньше:

<string name="negativeCups">You can't have negative number of cups of coffee<string> 

и это исправленная версия:

<string name="negativeCups">You can\'t have negative number of cups of coffee<string> 

Вот это .. Вот что вызвало эта проблема, и теперь она исправлена, спасибо всем!

1

The values part

Создать два различные папку, как значения в изображении, одна называется значение для заданного по умолчанию (английский) со всеми значениями файла и strings.xml для английских строк и один называемых значения-он с только файлом string.xml для иврита.

+0

Это не похоже на это внутри Android Studio, но в Finder это то же самое, что вы описали. У меня есть папка 'values' и папка' values-he', а файлы в папках - как ожидалось (он в hebrew folder и регулярно в обычной папке) –

+0

Это фотография, которую я нашел в Интернете, и это от eclipse, но это то же самое для android-studio – Chris

+2

Обратите внимание: 'Java использует несколько устаревших двухбуквенных кодов. Ивритский («он») код языка переписывается как «iw», индонезийский («id») как «in», и идиш («yi») как «ji». Ссылка: http://developer.android. com/reference/java/util/Locale.html –

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