如何在Swift中每个单元格两行解析xml结果到tableview?
我想在表格视图中显示这样的结果
的TableView
=====
userID:brat_peet
密码:12124521=====
userID:Miketyson
密码:Miketyson
=====
我该怎么做?
这是我的xml结果。
<Record table="User" partial="true">
<Field name="userID" primaryKey="true"><![CDATA[brat_peet]]></Field>
<Field name="password" primaryKey="true"><![CDATA[12124521]]></Field>
</Record>
<Record table="User" partial="true">
<Field name="userID" primaryKey="true"><![CDATA[Miketyson]]></Field>
<Field name="password" primaryKey="true"><![CDATA[Miketyson]]></Field>
</Record>
<Record table="User" partial="true">
<Field name="userID" primaryKey="true"><![CDATA[Kennedy]]></Field>
<Field name="password" primaryKey="true"><![CDATA[754123654]]></Field>
</Record>
</ATBResponse>
答案 0 :(得分:0)
对于tableView:
“每个单元格两行”是一个无关的值。您可以使用“自定义”样式单元格,并在每个单元格中放入所需的文本标签(以及图像和其他内容)。因此,要在每个单元格中使用两个“线”,您只需选择“自定义”单元格,向下拖动以增加尺寸并在内部插入两个标签。
对于XML解析:
首先,您必须了解如何在Swift中解析XML。这是我写的教程: https://medium.com/@lucascerro/understanding-nsxmlparser-in-swift-xcode-6-3-1-7c96ff6c65bc
在您的情况下,您必须构建代码,以便仅在<Field>
元素内部检查<Record>
元素。然后,您可以通过检查"username"
的{{1}}来区分"password"
和<Field>
数据。
对于字符串:
最后,您生成的attributes
将不是您需要的最终数据。有许多foundCharacters
类型的方法可以解决这个问题。一个示例是使用方法String
删除开始和结束字符,因为它们看起来总是相同的(在您的情况下:removeRange
和"<![CDATA["
,假设您是将它们作为"]]>"
类型返回。