我注意到Xcode有一些非常烦人的地方:我有一些故事板,当我打开它们时,某些视图的大小和位置会被系统地更新。这很烦人,尤其是在与团队合作时。
下面是我如何产生这种行为的:
- 我从git存储库中提取应用程序
- 打开受影响的情节提要,而不做任何修改
- git diff已经告诉我了
$ git diff
...
- <rect key="frame" x="576.99999828648401" y="11" width="170" height="20"/>
+ <rect key="frame" x="577" y="11" width="170" height="20"/>
...
- <rect key="frame" x="518.99999921768904" y="7" width="228" height="30"/>
+ <rect key="frame" x="519" y="7" width="227.99999841338541" height="30"/>
其他人也这样吗?
问题是:
- 为什么我的情节提要在我仅打开它时就被修改,如何防止?**
注意事项:
我意识到这种情况似乎只发生在包含在label
s和textField
s中的<rect />
上
2条答案
按热度按时间bakd9h0s1#
Xcode将脚本布局信息保存在XML文件中(. storyboard)。因此,情节提要上的任何更改都将反映在该XML中。特别是当您与队友一起工作时,此信息可能会定期更改。您可以通过移动某些项目来尝试(不要修改其他任何内容),然后开始与git仓库进行比较,你应该会再次看到XML中的变化。你可以忽略git checkout 中的故事板文件,但这样做没有多大意义,因为你的队友可能已经在故事板中添加了新条目。
也许这也有帮助:[Xcode changes unmodified storyboard and XIB files
如果我理解第一个答案是正确的,那么其他更改也可能触发故事板XML文件的更改。
问候托马斯
wmomyfyw2#
故事板有一个错误,似乎没有人去调查它。
尽可能多地拆分故事板,以减少合并冲突的可能性,并简化冲突的最终解决。如果您在分辨率不同的外部显示器上使用Xcode,冲突也可能会升级。
这个问题只能减少,永远不能解决。