Я столкнулся со странной проблемой, когда, если я вызываю 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). Что происходит? Это неприятно вызывает у меня искушение жестко запрограммировать строки; -)
Спасибо за вашу помощь!