将sql xml绑定到Android中的gridview

时间:2012-01-23 20:41:02

标签: android xml android-widget

我有一个基本的Andriod应用程序,上面有一个按钮和一个gridview。单击该按钮时,应用程序将调用Web服务并从中检索sql-xml字符串(C#,Dataset.GetXML()),这些都很有效。我需要知道如何将GridView控件绑定到此sql:xml以显示数据。我知道它与某种类型的适配器有关,但我无法弄明白。

非常感谢任何帮助!

@lyricsboy: 这是从Web服务返回的XML的副本(请记住,这是我在.NET中构建的Web服务,因此如果需要对其进行任何更改,他们可以):

<?xml version="1.0" encoding="UTF-8"?>
<string xmlns="RemoteWebService">
<AllContacts> 
  <Table>
    <ContactID>7</ContactID> 
    <ContactName>Support</ContactName> 
    <EmailAddress>me@me.com</EmailAddress> 
    <CCEmail>him@me.com</CCEmail> 
    <Visible>true</Visible> 
    <Description>If you have concerns you can use this email. </Description> 
 </Table>
 <Table>
   <ContactID>8</ContactID> 
   <ContactName>Training</ContactName> 
   <EmailAddress>them@me.com</EmailAddress> 
   <CCEmail />
   <Visible>true</Visible> 
   <Description>This email is designated for Training issues.</Description>
 </Table>
</AllContacts>
</string>

1 个答案:

答案 0 :(得分:0)

首先,您需要将XML解析为可以提供给适配器的内容。如果数据集的大小合理,则可以使用自己设计的模型对象来保存数据。创建它们的ArrayList,并将它们传递给ArrayAdapter或您自己设计的子类(或者您自己的自定义适配器,如果您需要它)。

基于示例XML,我将创建一个Contact类,其中包含可用于存储为每个项目发送的所有数据的字段。然后编写一些使用XmlPullParserdocs)的代码将您的XML转换为Contact个实例,并将它们放在ArrayList中。将该列表传递给ArrayAdapter,然后传递给GridView