这是我想做的:我的Storyboard包含一个只有几个控件的UIViewController。它的高度不到半个屏幕。为简单起见,我们将其称为DataViewController。DataViewController通过“ContainerView”嵌入到其他UIViewControllers中。虽然“ContainerView”显示了DataViewController,它仍然需要有一个显式的height设置。否则界面构建器会提示不明确的约束。现在,我如何告诉“ContainerView”它的大小应该是DataViewController所要求的大小?IE。没有在InterfaceBu
我正在使用自动布局。我在IB中有一个UIImageView。我想让它的宽度等于它的高度。我在Xcode4中学会了如何做这些事情中的大部分。我知道如何以编程方式做这件事,但是这会产生苹果尚未修复的错误:'AutoLayoutstillrequiredafterexecuting-layoutSubviews.UITableViewCell'simplementationof-layoutSubviewsneedstocallsuper.'那么如何在Xcode5InterfaceBuilder中设置this约束? 最佳答案 正如Timo
我想在DecimalPad键盘上添加一个“完成”按钮和一个分段控件。理想情况下,我想在InterfaceBuilder中使用自动布局布局键盘附件View。这可能吗?我是创建一个新的XIB还是可以在现有的Storyboard场景中以某种方式创建?如何将附件View附加到适当的文本字段? 最佳答案 您介意以编程方式进行吗?通常,您将UIToolbar与您的项目一起带到UITextField,但您可能需要subviewUISegmentedControl;UIToolbar*keyboardToolbar=[[UIToolbaralloc
我正在观看有关AutoLayout的WWDC演讲,我了解到在您的View上设置StoryboardID可以使约束冲突的控制台输出更易于阅读(即您获得名称而不仅仅是地址)。他们向您展示了在InterfaceBuilder中设置StoryboardID(以前只是“标识符”)的位置,但是有没有办法在代码中进行设置?我正在尝试在一个100%程序化的应用程序中调试大量复杂的View,这些View不是我自己编写的,它有许多无法满足的约束,并且(以某种方式)在iOS7中工作但在iOS中开始中断8.我很想清楚地看到哪个实际上是导致问题的原因。我查看了UIView类引用,找不到“Identifier”或
我在iOS8中使用TraitCollectionDidChange检测常规和紧凑尺寸类。我试图在屏幕上水平放置一组特定的数据,它不适合纵向iPadMini上的水平类常规,但在横向中会有足够的空间。问题是HorizontalSizeClass在Portrait和Landscape中是Regular,所以TraitCollectionDidChange不会触发,我也不会被告知方向改变。我听说过对viewWillTransitionToSize的引用,但这在UIView中不可用。Apple是否表示他们不希望UI布局与HorizontalClassRegular-Portrait和Ho
问题在UI中,我有一些观点认为哪些内容是可拉伸(stretch)的,但应该保留一些纵横比。此宽高比在运行时会发生变化,并且当某些描述宽高比的属性发生变化时,应更新View布局。我已经公开了NSLayoutConstraint,但是它用于纵横比的属性:multiplier是只读的。更有趣的是类似的属性constant可以改变。可能的解决方案我可以只使用固定宽度或高度的约束并根据预期比率计算它,但这需要额外的样板代码,这些代码将对几何/布局变化使用react,我宁愿避免这种情况。我可以尝试使用intrisicContentSize和sizeThatFits:但我不确定如何将其与NSLayo
我试图让11个按钮之间的水平间距相等,我已经尝试使用IB,但我无法让按钮在不同的屏幕尺寸下保持相等的间距。此外,我想增加按钮的大小,并在更大的屏幕上保持每个按钮的比例。3.5英寸5.5英寸我一直在尝试所有不同的约束设置,但我无法正确设置。这是否可能实现?如果是,如何实现? 最佳答案 要等距布置11个按钮,请在它们之间放置10个间隔View:设置以下约束:在最左边的按钮和左边距之间设置一个LeadingSpacetoContainerViewMargin约束。在最右边的按钮和右边距之间设置一个TrailingSpacetoContai
我有一个内容容器ViewController,它添加了一个subviewController,然后设置了一些自动布局约束来调整subview的大小。subview不会完全填满容器的View。我的subviewController实现viewWillTransitionToSize:withTransitionCoordinator:并根据传入的大小布置其内容。我知道我需要在容器ViewController中重写sizeForChildContent:withParentContainerSize:以便child在其viewWillTransitionToSize:方法中接收到正确的大小
我正在关注https://stackoverflow.com/a/18746930中提到的概念但使用自动布局实现动态单元格的方式略有不同。我只有一个原型(prototype)自定义单元格。但是我必须将多个UILabel添加到基于数据数组的单元格中,并且必须保持动态单元格高度。//我的UITableViewCell@interfaceCustomCell()@property(nonatomic,assign)BOOLdidAddLabel;@end@implementationCustomCell-(void)awakeFromNib{[superawakeFromNib];}-(vo
我在我的Storyboard中做了一个约束,并连接到我的ViewController中的一个变量。在updateViewConstraints中,我将约束的active属性设置为false。当我这样做self.view.setNeedsUpdateConstraints()self.view.layoutIfNeeded()在viewDidLoad中,layoutIfNeeded调用updateViewConstraints将约束设置为不活动,但随后某处将约束设置为事件并且然后UIViewAlertForUnsatisfiableConstraints符号断点由于与我的其他约束冲突而被