Я использую XmlPullParser для генерации форм в приложении для Android из локально сохраненного XML-документа.
XmlPullParser xpp = getResources().getXml(R.xml.calculator);
int eventType = xpp.getEventType();
и тогда у меня есть цикл while, который обрабатывает все элементы дерева.Однако, поскольку я продолжаю использовать
eventType = xpp.next();
, это метод, основанный на глубине, когда на самом деле я хочу использовать метод, основанный на ширине, (пользователь выполняет детализацию дерева, задавая вопросы).Большинство учебников по xml опираются на DOM, который, как я слышал, ненадежен на Android из-за ограничений памяти.Буду очень признателен за помощь.
XML находится в этой форме
<top>
<page>
<question>This is the first question</question>
<answer>
<text>Answer 1</text>
<page>
<question>If you choose Answer 1 you get asked this question</question>
<answer>
.
.
</answer>
<answer>
.
.
</answer>
</page>
</answer>
<answer>
<text>Answer 2</text>
.
.
.
</answer>
</page>
</top>
Я надеюсь, что это имеет немного больше смысла, чем раньше.Таким образом, по сути, учитывая это дерево, я хочу создать экраны (во время выполнения), которые задают пользователю эти вопросы и принимают их ответы. В зависимости от своих ответов они получают следующий набор вопросов.Спасибо за действительно быстрые ответы !!