NSXMLElements在关闭之前突破TAG - Cocoascript

时间:2017-09-06 15:53:32

标签: xml plugins sketch-3 export-to-xml cocoascript

我正在创建一个XML文件。我需要的是在关闭TAG之前进行换行 我的预期打印输出是

<View 
    x=“0” y=“0" 
    width=“464” height=“287">
</View>

相反,我的输出如下:

<View 
    x=“0” y=“0" 
    width=“464” height=“287"></View>

这是我的代码:

var layerElement = [NSXMLElement elementWithName:@"View"];
[layerElement addAttribute:[NSXMLNode attributeWithName:@"\n \tx" stringValue:layerXpos]];
[layerElement addAttribute:[NSXMLNode attributeWithName:@"y" stringValue:layerYpos]];
[layerElement addAttribute:[NSXMLNode attributeWithName:@"\n \twidth" stringValue:layerWidth]];
[layerElement addAttribute:[NSXMLNode attributeWithName:@"height" stringValue:layerHeight]];
[root addChild:layerElement];

在doc页面中,我发现只有一些参考用于压缩/展开空标签(NSXMLNodeOptions),但没有任何内容可以在TAG不为空时格式化。

1 个答案:

答案 0 :(得分:0)

我找到了一个比预期更简单的解决方案:

var layerElement = [NSXMLElement elementWithName:@"View" stringValue:"\n"];

只需将新行(@"\n")属性添加到stringValue参数,一切都会正常工作。

如果其他人知道哪些内容会更好,请添加您的答案。