如何在重新启动 xcode 7.1 时修复丢失的约束

Posted

技术标签:

【中文标题】如何在重新启动 xcode 7.1 时修复丢失的约束【英文标题】:How to fix missing constraint while restarting xcode 7.1 【发布时间】:2016-02-15 10:05:06 【问题描述】:

我制作了两个故事板:一个用于 iPhone,另一个用于 iPad。为了创建 iPad 故事板,我使用了大小类 wRegular hRegular。在修复了我所有的约束问题后,它在预览中完美运行,但是当我重新启动 Xcode 时,一些约束被放错了位置。

Screen shot misplaced constraint while restart xcode

Screen shot after updating the frame

【问题讨论】:

在你这样做之后使用更新框架或更新约束。约束不能自行改变,你正在做某事。 我正在使用更新框架它可以工作,但是重新启动 xcode 框架时设置与以前相同的位置。 请参考我的回答***.com/questions/34351106/… 我可以看一下截图,这样我可以更好地判断。 我已附上截图请查收。 【参考方案1】:

只是一个建议,如果您为 iPad 和 iPhone 使用相同的 UI,最好为两者使用一个故事板。

【讨论】:

感谢您的建议,我知道使用单个故事板比创建两个更好,但这也不是错误的方法,请您回答我当前的问题。 【参考方案2】: 使用 Size 类的基本概念是您的 Base design.it 应该设计在wAny hAny。 现在您希望任何特定视图都应显示在特定视图中 大小类,那么只有它可以添加到该大小类,例如。如果你 想要标签应该显示在 iPad 上然后你应该添加它 wRegular hRegular 尺寸类。作为添加到 wRegular hRegular 的标签,它仅对 iPad 7 可见,在 iPhone 中不可见。 所以你需要做的是在wAny hAny 中重新设计你的StoryBoard 和 添加constraints。 您也可以参考我的回答,其中有一些描述Main.Storyboard Frames Not Updated

【讨论】:

感谢@Rohit 的回复,正如我之前提到的,我使用 w Any h Any 为 Iphone 制作了另一个故事板,但是在付出更多努力之后,我无法为 iphone 和 ipad 制作响应式视图然后我选择为 ipad 使用 size class w Regular h Regular 并制作了另一个故事板,一旦我更新框架,它就可以完美运行,但是当我再次重新启动 xcode 时,ipad 框架会像以前一样设置,所以请告诉我天气我可以在不使用尺寸类的情况下制作响应式视图 我不认为这会是一个更好的解决方案。它会暂时解决你的问题,但它会让你在未来的某个地方感到痛苦。使用单个 StoryBoard 有很多问题。更好就是用单故事板来解决这个问题。 使用单个 StoryBoard 是引入尺寸等级的动机 好的,我正在按照您所说的使用单个故事板进行操作,稍后我会通知您,谢谢您的回复

以上是关于如何在重新启动 xcode 7.1 时修复丢失的约束的主要内容,如果未能解决你的问题,请参考以下文章

iPhone 在 Xcode 7.1 测试版中无法连接

如何使用 Xcode 7.1 和 iOS 部署目标 iOS 7.1 启动应用程序?

如何修复 xcode 苹果配置的“丢失私钥”?

如何修复:Xcode 9 构建循环直到退出代码 255

XCode 7.1 Testflight 内部测试错误

swift 在Xcode 6 GM + iOS 7.1中修复UICollectionViewCell损坏的自动布局约束