Я хотел бы получить правильный способ разбора пользовательских тегов Android с помощью XmlResourceParser. Я использую Eclipse 3.6 с подключаемым модулем android, и я хотел бы, чтобы некоторые атрибуты, такие как name
, были расширены с полной строкой от strings.xml
.Пользовательский XML-парсер Android не разрешает пространство имен android
Адрес index.xml
, который обрабатывается в папке res/xml/
.
<?xml version="1.0" encoding="utf-8"?>
<Index xmlns:android="http://schemas.android.com/apk/res/android">
<Sheet
shortName="o_2sq"
android:name="@string/o_2sq"
instructions=""
/>
</Index>
Вот файл strings.xml
в res/values/
папке
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="o_2sq">Organize two squares</string>
</resources>
и фрагмент кода, который разбирает первый index.xml
с XmlResourceParser:
String name = xpp.getAttributeValue(null, "android:name");
String shortName = xpp.getAttributeValue(null, "shortName");
Переменная name
содержит null
, но shortName
содержит "o_2sq"
. Я также попытался следующие без успеха:
String name = xpp.getAttributeValue("android", "name");
Что такое правильный способ написания предложение так, что имя переменной будет содержать "Organize two squares"
?
Вы имели в виду 'else {name = s '}'? Похоже, что этот атрибут может быть либо ресурсом, либо жестко запрограммированной строкой, нет? –
Мне было нужно, чтобы в моем случае не было нулевого имени. Вот почему. –