В настоящее время я пытаюсь проанализировать некоторые XML с помощью XmlResourceParser, а затем показать информацию в ListView с помощью ArrayAdapter. Проблема в том, что у меня нет результатов муравьев.Анализ XML ничего не возвращает
Моя структура XML, как это:
<resources>
<categories>
<animal>
<word>
<english>Animal</english>
<french>Animal</french>
<spanish>Animal</spanish>
<portuguese>Animal</portuguese>
</word>
</animal>
<transportation></transportation>
<location></location>
<clothing></clothing>
<color></color>
<people></people>
<job></job>
<society></society>
<art></art>
<beverages></beverages>
<food></food>
<home></home>
<electronics></electronics>
<body></body>
<nature></nature>
<material></material>
<math></math>
<directions></directions>
<seasons></seasons>
<numbers></numbers>
<months></months>
<days></days>
<time></time>
<verbs></verbs>
<adjectives></adjectives>
</categories>
Теперь каждая категория будет иметь разные слова на них, но в этот момент я только хочу, чтобы получить все категории и показать их в Посмотреть список. Для того, чтобы попытаться получить все категории я использую следующий код:
public class MainActivity extends ActionBarActivity {
private ListView list;
private ArrayList<String> arrayCategories;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
list = (ListView) findViewById(R.id.listView1);
try {
arrayCategories = parseCategories();
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
this,
R.id.listView1,
arrayCategories);
list.setAdapter(arrayAdapter);
} catch (IOException e) {
e.printStackTrace();
}
}
и функция parseCategories заключается в следующем:
private ArrayList<String> parseCategories() throws IOException {
ArrayList<String> categories = new ArrayList<String>();
XmlResourceParser parser = getResources().getXml(R.xml.database);
try {
int eventType = parser.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
if (eventType == XmlPullParser.START_TAG) {
if (parser.getName().equals("categories")) {
categories.add(parser.nextText());
}
}
eventType = parser.next();
}
} catch (XmlPullParserException e) {
Log.e("XmlPullParserException", e.toString());
}
parser.close();
return categories;
}
Я все еще немного неопытный, когда дело доходит до разбора xml, можете ли вы, ребята, помочь мне с этим?
В элементе категорий нет «текста», только больше элементов. (Только текст находится в тегах, таких как ' Animal ', change '.equals (" categories ")' to '.equals (" english ")', чтобы видеть.) –
user2864740
Мне это нужно получить помощь мой уже ответ вопрос. [Нажмите здесь] [1] [1]: http://stackoverflow.com/questions/26397647/how-to-make-rss-news-reader-application-in-android/26398110 # 26398110 –
Итак, в основном вы говорите, что мне нужно «жестко закодировать» категории, но как я узнаю, к какой категории принадлежит конкретное слово? –