Консультация № 186552
19.08.2012, 19:03
0.00 руб.
0 1 1
Здравствуйте уважаемые эксперты! Вопрос по ОС Андройд.
Допустим такой пример кода:
Код:
XmlResourceParser parser = context.getResources().getXml(R.xml.data_file);
int eventType = parser.getEventType();
while (eventType != XmlPullParser.END_DOCUMENT) {
if (eventType == XmlPullParser.START_TAG) {
String tagName = parser.getName();
...
}
eventType = parser.next();
}
Пример вполне рабочий, xml документ парсится, всё работает.

Вопрос вот в чем: Эклипс показывает, что XmlResourceParser это не класс а интерфейс. А где тогда находится реализация этого интерфейса? Где описана реализация методов next(), getName() и т.д. ?
Что-то мне это не совсем понятно.

Обсуждение

давно
Старший Модератор
17042
808
20.08.2012, 07:33
общий
это ответ
Здравствуйте, Вячеслав Шинкаренко!
XmlResourceParser является интерфейсом XmlPullParser (см. http://developer.android.com/reference/android/content/res/XmlResourceParser.html).
XmlPullParser, в свою очередь, является интерфейсом XMLPULL - XML парсера (точнее, набора API), написанного на Java (см. http://developer.android.com/reference/org/xmlpull/v1/XmlPullParser.html).
Подробнее о XMLPULL можно прочесть здесь.
Собственно XMLPULL и представляет реализацию методов next(), getName() и т.п.
5
Спасибо. Вроде разобрался, с Вашей помощью.
Об авторе:
We have but faith: we cannot know;
For knowledge is of things we see;
And yet we trust it comes from thee,
A beam in darkness: let it grow.
-----
https://www.linkedin.com/in/andreynkuznetsov
https://www.researchgate.net/profile/Andrey_Kuznetsov11
http://www.researcherid.com/rid/K-8824-2014
Форма ответа