我有一段XML数据,其中包含多个人的信息,表示为 -
<phoneContact>
<firstName>XXXXX</firstName>
<middleName>Y</middleName>
<lastName>ZZZZZ</lastName>
<phone>1234567890</phone>
</phoneContact>
<phoneContact>
<firstName>AAAA</firstName>
<middleName>B</middleName>
<lastName>CCCCC</lastName>
<phone>9876543210</phone>
</phoneContact>
可能有任何人数。我想将其转换为 -
<phoneContact1>
<firstName>XXXXX</firstName>
<middleName>Y</middleName>
<lastName>ZZZZZ</lastName>
<phone>1234567890</phone>
</phoneContact1>
<phoneContact2>
<firstName>AAAA</firstName>
<middleName>B</middleName>
<lastName>CCCCC</lastName>
<phone>9876543210</phone>
</phoneContact2>
..等等。如何为每个创建多个不同元素名称的代码构造XSL?
感谢您对此提供任何帮助。
答案 0 :(得分:1)
在@Override
public void onClick(View v) {
switch(v.getId()) {
case R.id.iVmg1:
display.setImageResource(R.drawable.img1);
break;
case R.id.iVmg2:
display.setImageResource(R.drawable.img2);
break;
case R.id.iVmg3:
display.setImageResource(R.drawable.img3);
break;
case R.id.iVmg4:
display.setImageResource(R.drawable.img4);
break;
case R.id.iVmg5:
display.setImageResource(R.drawable.img5);
break;
case R.id.iVmg6:
display.setImageResource(R.drawable.img6);
break;
case R.id.iVmg7:
display.setImageResource(R.drawable.img7);
break;
case R.id.iVmg8:
display.setImageResource(R.drawable.img8);
break;
case R.id.iVmg9:
display.setImageResource(R.drawable.img9);
break;
case R.id.iVmg10:
display.setImageResource(R.drawable.img10);
break;
// here
default:
break;
}
}
元素的循环内,您可以使用phoneContact
和位置函数来创建编号为<xsl:element>
的内容:
phoneContacts
答案 1 :(得分:0)
我们可以使用身份功能实现如下
<xsl:template match="node()|@*">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
<xsl:template match="/a/phoneContact">
<xsl:element name="phoneContact{position()}">
<xsl:apply-templates select="@*|node()"/>
</xsl:element>
</xsl:template>