Проблемы с вызовом из strings.xml - PullRequest
1 голос
/ 18 февраля 2011

У меня проблема с вызовом строковых значений из ресурса strings.xml в Android.Файл strings.xml находится ниже:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="name1">contact_name1</string>
    <string name="phone1">contact_phone1</string>
</resources>

И код для вызова строковых значений:

private final String NAME1  = getString(R.string.name1);
private final String PHONE1 = getString(R.string.phone1);

Я вызываю строки из моего main.java, где я extend Activity, поэтому у меня есть контекст.Проблема в том, что когда я запускаю приложение (физическое устройство (EVO) или эмулятор (уровни API 5 - 8)), я получаю NullPointerException на линии, где расположен первый вызов getString()., несколько постов здесь и на AndDev.org без изменений в конечном результате. Кто-нибудь, пожалуйста, скажите мне, что не так, прежде чем я вытащу все свои волосы!* каталог) в том же пакете, что и остальная часть приложения.

Ответы [ 2 ]

6 голосов
/ 18 февраля 2011

Вы не можете вызвать getString из того, что фактически является конструктором Activity, так как контекст не существует.Вам нужно будет удалить ключевое слово final и назначить переменные-члены в onCreate().

1 голос
/ 18 февраля 2011

используйте следующую строку в onCreate ()

final String NAME1  = (getResources().getString(R.string.name1));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...