Xcode - 故事板视图在打开时修改大小和位置

时间:2014-07-21 12:56:29

标签: objective-c xcode git xcode-storyboard

我注意到一些非常讨厌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"/>

这是否发生在其他人身上?

问题是:
为什么我的故事板在我打开它时会被修改,以及如何防止它?


注意:

我意识到这似乎只发生在<rect /> s&amp;中所包含的label上。 textFieldŠ

2 个答案:

答案 0 :(得分:0)

Xcode将故事板布局信息保存在XML文件(.storyboard)中。因此,故事板上的任何更改都将在该XML中反映出来。特别是如果您与队友一起工作,这些信息可能会定期更改。你可以通过移动一些项目来尝试它(不要改变其他任何东西),之后用你的git存储库开始一个diff。您应该再次看到XML中的更改。您可以忽略git checkout中的storyboard文件。但是,由于你的队友可能已经在故事板中添加了新项目,因此这没有多大意义。

也许这也有帮助:[Xcode changes unmodified storyboard and XIB files

如果我理解第一个答案,那么其他更改也可能会触发故事板XML文件的更改。

问候 托马斯

答案 1 :(得分:-1)

我有同样的问题。 你解决了吗? 怎么样?

这是我的解决方案:

  1. 目前我使用Xcode Version 6.1.1(6A2008a)
  2. 我下载Xcode 6.3 beta 2 Build:6D532l
  3. 在Xcode 6.3 beta 2中打开项目
  4. Xcode 6.3 beta 2将修改故事板:添加一些字段并更改一些值
  5. 运行项目以检查应用程序外观
  6. 关闭项目
  7. 使用Xcode Version 6.1.1(6A2008a)
  8. 打开
  9. 检查更改(在我的情况下,Xcode版本6.1.1(6A2008a)不会因Xcode 6.3 beta 2而拒绝更改)
  10. 运行(问题似乎已解决)