проблема при разборе XML-данных в Android, пожалуйста, научите меня

#android #xml #parsing

#Android #xml #синтаксический анализ

Вопрос:

в моем приложении, которое я отправляю, когда я нажимаю кнопку, оно переходит к URL-адресу и возвращает обратно XML-файл. XML-файл выглядит следующим образом

 <search>
     <data>
      <userid>1</userid>
          <name>Jean</name>
          <address>dbvsvksn</address>
          <dob>Mar 3</dob>
      <country>us</country>
     </data>
     <data>
      <userid>2</userid>
          <name>Anne</name>
          <address>dbvsvksn ,</address>
          <dob>Jun 2<dob>
      <country>us</country>
     </data>
     <data>
      <userid>3</userid>
          <name>J</name>
          <address>dbvsvksn ,</address>
          <dob>Dec 6<dob>
      <country>us</country>
     </data>
</search>
  

Из этого XML-файла я перечисляю имя в виде списка в activity. При просмотре списка при нажатии на имя он переходит к новому действию, где я хочу отобразить правильный адрес, страну и dob.

Я могу получить XML-файл и вывести имена в виде списка, но я не знаю, как отобразить точный тег, связанный с выбранным именем, пожалуйста, помогите мне. Как это сделать….

Ответ №1:

Вы говорите, что можете получить XML-файл и перечислить имена, так что вы, по-видимому, разбираете xml. Используете ли вы один из классов синтаксического анализа XML (DOM или SAX)? Если это так, предположительно, вы создаете какую-то структуру данных на основе синтаксического анализа (вероятно, массив, судя по опубликованному вами фрагменту XML). Используйте индекс выбранного имени для индексации в массив и извлеките остальные необходимые вам данные.

Возможно, если вы разместили какой-нибудь код, показывающий, что вы пробовали, мы сможем предоставить более конкретную помощь.

Ответ №2:

вы можете использовать textview. Количество идентификаторов пользователя совпадает с количеством textview.По одному для каждого идентификатора пользователя, имени, адреса, dob amp; country. Просто добавьте их в tablerow и просто проверьте, какая строка нажата, просто передайте всю информацию об этом щелчке в intent, и вы сможете отобразить всю информацию.