Идентификаторы ресурсов Android назначаются неправильно

Я столкнулся со странной проблемой, когда, если я вызываю getString (R.string.somestringname) , время от времени, даже после удаления файла R и повторной компиляции, неверная строка появляется. Эмулятор не дает сбоев, и отображается правильная строка - просто неправильная.

Пример моего файла strings.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <!-- Activity Names -->
    <string name="app_name">an app name</string>
    <string name="selector_name">app name | Select</string>
    <string name="create">Create</string>
    <string name="overview_name">appname | Overview</string>
    <string name="another_name">appname | Another View</string> 

.....
    <!-- Edit Note -->
    <string name="placeholder">Foo bar</string> <-- here is a problem
    <string name="created">Created:</string>

</resources>

Вот пример кода, в котором встречается одна из проблем:

if (note.created != null) {
     createdtext.setText(getString(R.string.created) + " " + Util.longDateFormat(note.created));
}

Выводимый текст ( иногда ) - Foo bar 3 ноября 2010 г. (т.е. принадлежит R.string.placeholder). Что происходит? Это неприятно вызывает у меня искушение жестко запрограммировать строки; -)

Спасибо за вашу помощь!

5
задан SapphireSun 3 November 2010 в 05:36
поделиться