iOS自定义视图:无法同时满足约束错误
我正在关注Ray Wenderlich关于实现rateView的教程: http ://www.raywenderlich.com/1768/how-to-make-a-custom-uiview-a-5-star-rating-view
在我的应用程序中实现了rateView后,我得到了这个错误:
无法同时满足约束。 下面列表中的至less一个约束可能是你不想要的。 试试这个:(1)看看每一个约束,并试图找出你不期望的; (2)find添加不需要的约束或约束的代码并修复它。 (注意:如果您看到您不明白的NSAutoresizingMaskLayoutConstraints,请参阅UIView属性translatesAutoresizingMaskIntoConstraints的文档)
(“NSAutoresizingMaskLayoutConstraint:0x870c2b0 h = – &v = – &V:[UIView:0x93a1d60(416)]”,“NSLayoutConstraint:0x87363c0 V:| – (203) – [RateView:0x8729040] UIView:0x93a1d60)“,”NSLayoutConstraint:0x8736440 V:[RateView:0x8729040] – (228) – |(Names:'|':UIView:0x93a1d60)“)
将尝试通过中断约束来恢复NSLayoutConstraint:0x8736440 V:[RateView:0x8729040] – (228) – | (名称:'|':UIView:0x93a1d60)
在objc_exception_throw上中断,在debugging器中捕获它。 UIKit / UIView.h中列出的UIView的UIConstraintBasedLayoutDebugging类中的方法也可能会有帮助。
我下载了Ray提供的示例应用程序,它对我来说是完美的,没有错误。 通过代码search后,我没有看到任何区别,我在Interface Builder中的连接与他的相同。 其中一个显着的区别是在我们的个人利率意见的大小督察。 他的样子是这样的:
而我的看起来像这样:
考虑到错误与约束有关,这可能是问题。 但是,我不知道如何改变我的rateview是自动调整和雷如。 帮帮我?
取消选中“使用Autolayout”并尝试….
新的Xcode 5有一个新的function,从不同的常量值意识到我们。 我非常欣赏这个function,它减less了故事板和模拟器和/或设备中的错误和差异。
尝试遵循黄色三angular形。 它位于左侧边栏,当故事板查看器打开。 它带来了三个解决scheme,如何解决这个问题,并且自动进行。
所以只需更新框架,约束或重置为build议的约束。
解:
(如果你没有看到左边栏 ,在新的Xcode 5中可能会隐藏,只需点击播放图标 ):
先按照黄色箭头:
然后按照黄色triange,点击它后,你会得到对话框:
这是AutoLayout constraints
的错误您必须检查在视图的XIB中使用的约束。 修复这些限制,然后您的项目将正常工作。 希望这会帮助你。
将底部空间的优先级更改为:超级视图或顶部空间,以便:从默认所需(1000)到高级(750)的超级视图。