在xcode 6.1中,界面构建器删除了ui元素

时间:2014-10-23 20:45:32

标签: ios objective-c xcode uitableview interface-builder

我有一些视图,包括一些tableviews和一些集合视图,还有一些按钮和标签。

我不确定这是否是Xcode 6.1的新功能,因为我已经有一段时间没有参与这个项目的ui方面了。但是,当我尝试调整视图中的任何内容时,我的tableviews和集合视图以及可能的其他一些我没有注意到的元素会被删除。具体来说,似乎他们的框架或矩形属性被删除了。

要清楚,只有当我尝试通过在界面构建器中拖动边来调整元素大小时才会出现这种情况。如果我通过直接在IB侧栏或xml中更改数字来调整它们的大小,则不会发生这种情况。

我想知道这是否是Xcode中的错误,或者我是否已经做了一些导致我可以改变的行为。

谢谢!

9 个答案:

答案 0 :(得分:3)

我实现了修复,至少对于这个项目来说,通过关闭自动布局"显示文件检查器" - > "界面构建器文档"

我以前从未使用过这个功能,所以我不知道它是否在过去,但我想知道新的Xcode版本是否默认打开,而其他人则将其关闭。 它也可能一直在运行,但新版本中的功能存在错误。

这解决了我的问题,至少在这个特定的项目中,至少在目前。我希望其他人觉得这很有用。

答案 1 :(得分:2)

从这里看起来像是Xcode 6.1中的一个错误。

我创建了一个干净的项目,我的机器上的行为是一样的:

https://github.com/nasht/Xcode6ConstraintTest.git

调整一个视图的大小会让其他人消失。将布局约束从a更改为< =或> =似乎也可以。

我向Apple提出了一个错误。建议你这样做。

解决方法:您可以安装xcode 6.01并使用界面构建器。如果您依赖于xcode 6.1特定功能,您仍然可以使用xcode 6.1编译和运行代码。 (你需要重命名你的xcode.app,这样你就可以运行这两个实例。)这很难看,但它确实有效。

答案 2 :(得分:2)

我发现它已修复到下一版本的xcode(6.1.1)

答案 3 :(得分:1)

同样的问题,优胜美地和xcode 6.1。只有在禁用自动布局时才可以调整某些视图。

答案 4 :(得分:0)

我想我遇到了这个'问题'。我认为这是因为我所遇到的一个限制因素设置不正确。

答案 5 :(得分:0)

您使用的是什么OS X版本?我今天更新了Yosemite和6.1。当我调整标签大小时,我的其他元素没有被删除,而是重新调整大小并重新定位。宽度/高度将更改为0,0并且x / y也将更改为0,0。

我注意到Yosemite的其他问题所以继续进行并将时间封装恢复到Mavericks和Xcode 6.0

答案 6 :(得分:0)

我在通用应用程序中遇到了同样的问题; iphone工作正常,ipad无法正常工作。

我正在使用xCode 6.1和OSX Yosemite 我的应用程序支持iOS7和iOS8,我只在iPad版本的iOS7上遇到同样的问题

修正:

  

所以我通过在界面构建器中设置模拟指标来修复它   尺寸= iPad全屏横向或纵向定位

答案 7 :(得分:0)

我遇到了与Xcode 6.1和Yosemite相同的问题: 我创建了一个我已添加到主视图的视图,因此它看起来像视图控制器场景中的子视图。 然后我将此子视图调整为320 x 568.我的程序有效。它对应于斯坦福CS193P第9讲的节目滴。 我保存项目,关闭它并重新打开它:子视图的宽度和高度设置为0!

我试图打开第8讲的项目dropit,这是完全相同的,之前正在工作(我认为在Xcode 6中)和同样的问题!首先,我认为点击(与子视图相关)不起作用,但发现点击不起作用,因为我正在点击宽度和高度设置为0的子视图!

答案 8 :(得分:0)

我已经重置了添加了所有UIElements的大小类wCompact hAny。并得到纠正。