1

这是正在发生的事情:

我在 xib 中有一个 NSTableView,它使用单元格的自定义视图。如果我在 xib 打开时按运行,这可以正常工作。

但是,当我离开 xib 并打开任何其他文件运行时,XCode 会更改我的 xib。我已经提交了工作 xib,更改了文件,这就是 xcode 正在更改的内容:

 <imageView horizontalHuggingPriority="251" 
            verticalHuggingPriority="251" 
            id="Ciy-iY-YFr">

[REMOVED]<rect key="frame" x="20" y="5" width="50" height="50"/>
[ADDED]<rect key="frame" x="20" y="-56" width="50" height="50"/>

基本上它改变了我在单元格内的 imageView。我试图删除自动布局,再次创建 tableView,但到目前为止没有任何效果:/。

这发生在 OSX 10.8 上的 XCode 5.0.3 上。

4

1 回答 1

1

你需要理解一些东西:仅仅因为你frameUIView's子类上看到了一个给定的,并不意味着当代码运行时它就会在那里。如果您正在使用自动布局,很可能您在 Nib 文件上有“橙色”行,这意味着您在视图的框架和实际的自动布局约束之间存在一些不一致。所以

  1. 检查您是否有不一致的地方(橙色线。蓝色很好!)。
  2. 禁用自动布局并检查您是否有一些奇怪的自动调整大小的蒙版。这会影响您的视图框架。
  3. 如果没有工作,请使用代码。:)
于 2013-11-13T18:17:46.453 回答