Chciałbym uzyskać prawidłowy sposób analizowania niestandardowych tagów Androida za pomocą XmlResourceParser. Korzystam z Eclipse 3.6 z wtyczką Android i chciałbym, aby niektóre atrybuty, takie jak name
, zostały rozszerzone o pełny ciąg od strings.xml
.Android niestandardowy analizator składni XML nie rozpoznaje przestrzeni nazw Android
Oto index.xml
, który jest przetwarzany w folderze 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>
Tutaj jest plik strings.xml
w katalogu
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="o_2sq">Organize two squares</string>
</resources>
res/values/
i fragment kodu, który przetwarza pierwszy index.xml
się w XmlResourceParser:
String name = xpp.getAttributeValue(null, "android:name");
String shortName = xpp.getAttributeValue(null, "shortName");
Zmienna name
zawiera null
, ale shortName
zawiera "o_2sq"
. Próbowałem również następujące bez powodzenia:
String name = xpp.getAttributeValue("android", "name");
Co to jest poprawny sposób pisać zdanie tak, że nazwa zmiennej będzie zawierać "Organize two squares"
?
Czy chodziło Ci o 'else {name = s '}'? Wydaje się, że to pozwoliłoby, aby ten atrybut był zasobem lub stałym ciągiem znaków, nie? –
Potrzebowałem imienia, które nie jest puste w moim przypadku. Dlatego. –