iOS storyBoard会自动创建一个可变数组,并且始终保持相同的增长,就是这样:
<customFonts key="customFonts">
<mutableArray key="Roboto-Medium.ttf">
<string>Roboto-Medium</string>
<string>Roboto-Medium</string>
<string>Roboto-Medium</string>
... (lots of more of this things)
<string>Roboto-Medium</string>
<string>Roboto-Medium</string>
<string>Roboto-Medium</string>
</mutableArray>
我认为每次在故事板上的某个元素中使用该字体时,它会添加一个条目。我的问题是:
1-我可以简单地删除重复吗?
2-为什么mytableArray增长相同(它有什么用途)?
3-有没有办法防止这个阵列增长?
答案 0 :(得分:2)
1-我可以简单地删除重复吗?
没有。也就是说,您可以尝试,但在快速测试中,我发现IB只是恢复了数组中已删除的项目。如果您不确定您的更改将如何影响该文件,我认为最好不要弄乱故事板文件。
2-为什么这个mutableArray增长相同(它有什么用途)?
很难说。它仅在您使用自定义字体时发生。我猜它是某种优化 - 如果它可以在数组中找到它,那么故事板也不必查找字体的正确名称。
3-有没有办法防止这个阵列增长?
不确定。停止在情节提要中指定自定义字体,而是使用UIAppearance
为受影响的项目指定自定义字体。我不确定为什么你真的很在乎 - 即使是一千个字体名称的副本也不会给你的应用程序的足迹增加太多,而且那里有很多东西。很有可能无论如何都会在运行时构建相同的数组。