我有一个基本的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>
答案 0 :(得分:0)
首先,您需要将XML解析为可以提供给适配器的内容。如果数据集的大小合理,则可以使用自己设计的模型对象来保存数据。创建它们的ArrayList,并将它们传递给ArrayAdapter
或您自己设计的子类(或者您自己的自定义适配器,如果您需要它)。
基于示例XML,我将创建一个Contact
类,其中包含可用于存储为每个项目发送的所有数据的字段。然后编写一些使用XmlPullParser
(docs)的代码将您的XML转换为Contact
个实例,并将它们放在ArrayList
中。将该列表传递给ArrayAdapter
,然后传递给GridView
。