问题标签 [nslayoutconstraint]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ios - NSLayoutConstraint 并将两个标签“附加”到彼此
我有两个标签。如果一个被移动,我希望能够同时移动两者。我如何将它们与 NSLayoutConstraints “附加”在一起?我可以在 IB 中做到这一点,但需要在代码中做到这一点。
另外,什么是 NSLayoutAttributeBaseline、NSLayoutAttributeLeading 和 NSLayoutAttributeTrailing?
编辑:
居中poweredByLabel(又名label02):
堆叠标签并垂直切换:
这会产生错误:
*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“无法解析约束格式:选项掩码需要在垂直边缘对齐的视图,这对于也是垂直的布局是不允许的。五:[rememberPasswordSwitch]-10-[rememberPasswordLabel]-10-[versionLabel]-[poweredByLabel]-|............ ..................................................... ....................^'
没有 NSLayoutFormatAlignAllBaseline 选项,它运行良好(它们堆叠但并非全部水平居中)。
ios - NSLayoutConstraint 并设置一个视图 X 像素从顶部纵向和 Y 像素从顶部横向
想要一个表格视图在纵向时从顶部向下显示 300 像素,而在横向时从顶部显示大约 175 像素。
我似乎无法弄清楚我需要的 VFL 逻辑。
ios - NSLayoutConstraint 和 MKMapView
在我的 viewDidLoad 方法中,我有创建 MKMapView、一些约束和 UIToolbar 的代码:
我有一个 MKMapView:
我创建了 2 个约束以使其全屏显示:
效果很好。但是当我尝试向地图视图添加任何内容时:
它抛出一个错误:
据我了解,既然我在地图视图中添加了一个新视图,那么地图视图需要重新计算其中的所有约束吗?基本上是一个用于约束的 drawRect 方法。
我怎样才能解决这个问题?
ios - 无法同时满足约束 - 没有适当的约束
我已经完成并删除了每个用户约束,但仅在旋转设备后我仍然收到以下错误。我完全不知道为什么。有没有人有任何想法?
ios - 子类化 UIImageView 并添加 UIControl
我正在尝试对 UIImageView 进行子类化以向其添加 UIControl,以便我知道何时选择它:
当我尝试添加约束以使 UIControl 与子类 UIImageView 的大小相同时,我收到一条错误消息,提示 self.control 没有超级视图:
如果我通过创建一个 UIImageView 来做同样类型的事情,然后创建一个 UIControl 并且[imageView addsubview:control]
它工作得很好。为什么当我尝试将相同的代码添加到init
方法时它会崩溃?
objective-c - 单个字符串中的程序化 NSLayoutConstraints
有没有一种方法可以将以下 3 个语法行组合成一个语句,例如(不起作用):
ios - iOS:在 UIScrollView 中水平自动调整组件大小
我有一个UIScrollView
包含不同组件的选择。根据设备是处于横向模式还是纵向模式,某些组件可能会水平越过边缘。我想要实现的是组件水平自动调整大小但垂直保持不变(即不再需要水平滚动)的设置。
我已经修复了,UIScrollView
所以它们只能垂直滚动。问题是现在滚动视图中的内容没有在水平方向上调整大小(正如我猜的那样)。
我在网上浏览并尝试了一些解决方案,但是我找不到一种方法来使内部的组件在UIScrollView
水平方向上自动调整大小,但在垂直方向上保持不变。
请任何人都可以建议这是否可能?
ios - 用于设置自动布局约束的 iOS 视图层次结构
视图控制器中最近的祖先self.navigationController.navigationBar
和子视图是什么self.view
,以便我可以将约束添加到该祖先?
我试着做
但两次我都得到错误,“约束是否引用了视图子树之外的东西?那是非法的。”
有人可以解释与导航控制器相关的视图控制器的视图层次结构吗?
谢谢!
cocoa - 另一个 Cocoa:_NSDisplayOperationStack 崩溃;也需要指导
就像这里提出的问题一样,我也遇到了 NSDisplayOperationStack 的问题。不过,让我先说明一下上下文。
我有一个窗口,其中包含一个view
,其中tabView
有几个按钮、文本视图和标签。内部view
来自tabview
不同的NIB,它使用自动布局(就像所有的视图、按钮等一样)并设置了约束。
约束在 IB 中进行,不包括在 WindowController 中进行的单个约束。此约束将 的 附加view
到它的超级视图,并以andtabView
的形式提供视觉约束。在该约束旁边,没有以编程方式制作或添加任何约束。@"H:|[viewInsideTheTabView]|
@"V:|[viewInsideTheTabView]|
在这种情况下,我运行并测试了我的应用程序,只是在多次调整窗口大小后才看到以下错误。
错误:
*** Assertion failure in -[_NSDisplayOperationStack exitDisplayOperationForWindow:], /SourceCache/AppKit/AppKit-1138.51/AppKit.subproj/NSDisplayOperationStack.m:343
Exception _NSDisplayOperationStack underflow raised during heart beat. Ignoring....
引发此异常时,应用程序将冻结并且不再响应。我已经检查了每个按钮、视图等是否有并发绘图,但没有一个(至少这是 IB 告诉我的)。
有没有人遇到同样的错误并知道如何应对?
提前致谢。
ios - UIView 和内在内容大小
UIView 是否创建一个intrinsicContentSize
?
我创建了一个 UIView 内容视图。我不给它限制大小:
我创建了另一个 UIView subview01。我给它约束大小并将其添加到我的 contentView 中:
contentView 不会获得任何大小。我认为intrinsicContentSize
应该计算显示所有子视图所需的大小并调整自身大小?就像 UILabel 将如何调整大小以显示其所有文本一样?