问题标签 [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.

0 投票
5 回答
15486 浏览

ios - UITableViewCellContentView 高度怎么可能与 heightForRowAtIndexPath 不同:

我的 UITableView 遇到了一个非常奇怪的问题。我有一些不同的单元格要显示在类似新闻源的表格视图上。

重用后我的单元格有问题。该单元格包含两个图像、两个标签和一个带有分享/喜欢/评论按钮的视图。我会试着画它,但我不确定它会不会漂亮:

我的限制是:

每次绘制单元格时,我都会更改此约束:

细胞第一次完美显示。

但是,我遇到的问题是,在某个时间点,经过一些重用(我不能每次都重现它),应用程序由于约束问题而崩溃。这是一个例外:

问题是约束 [UITableViewCellContentView:0x1ef2bf50(147)] 不正确。

奇怪的是 heightForRowAtIndexPath: 返回正确的值,即 217。

而我不明白的是 UITableViewCell 的高度是正确的!

所以我不明白 UITableViewCellContentView 的高度约束怎么可能是 147,是另一个同类型单元格的高度,但是应该改成 209 吧?

因此,如果您对如何发生这种情况有任何见解(也许我做错了什么),我会很高兴。

谢谢,

0 投票
0 回答
174 浏览

cocoa - Cocoa - 带有子视图的约束

我有两个 NSButton (button1button2),它们作为子视图添加到 NSView ( buttonView1, buttonView2)。buttonView1并被buttonView2添加到更大的 NSView ( menuBarView) 中。

所以设置看起来像:

在此处输入图像描述

我试图通过以下方式做到这一点:

button1在和 它之间添加约束buttonView1。但是当我尝试将buttonView1&添加buttonView2menuBarView.

如何使用视觉格式对约束进行编码来实现这一点?

0 投票
1 回答
1646 浏览

uiview - 在 iOS 6 中使用 Auto Layout 在 superview 中均匀分布相同大小的 UIView

我需要使用自动布局将一系列按钮均匀地放置在超级视图中。在这里,我想保持子视图的大小相同,只有子视图的中心会以这样的方式放置,即它们之间的空间数量相等。

注意:我不想设置超级视图的大小,我希望每件事都是自动布局的。

请帮助,我被卡住了!

谢谢!!

0 投票
1 回答
319 浏览

ios - 具有自动布局的动态 uiview 布局

我正在使用自动布局,到目前为止它进展顺利,但现在我对如何继续实现我想要的设计感到迷茫。

我收到了一份包含 2 个部分的小问卷。每个部分都嵌入在自己的 UIView 中,每个部分的视图包含每个问题的 uiview。

我的问题是,我想动态添加问题,当用户在问题 1 中输入某个输入时,只显示第 1 部分的问题 2。

所需布局

我首先尝试通过对问题视图使用 addsubview 并使用 setFrame 动态重置该部分的框架来显示每个部分:在意识到此方法不适用于自动布局之前(例如,因为我的问卷包含在滚动视图中,滚动将调用滚动视图上的 loadsubviews 方法并将部分的视图重置为其原始大小...)

实现这一目标的正确方法是什么?也许使用可变大小的表格视图?或者以编程方式创建布局约束?

0 投票
1 回答
83 浏览

ios - NSInvalidUnarchiveOperationException (NSLayoutConstraint) iOS5

NSInvalidUnarchiveOperationExceptioniPhone 5.1 模拟器上得到了一个。

在 iOS6 和iPad 5.1 模拟器上一切正常。

问题是我没有在我的项目中使用 NSLayoutConstraints 也不包含任何Nib -Files!

有什么建议吗?提前致谢!

0 投票
1 回答
1114 浏览

iphone - 如何以编程方式使用自动布局在视图之间提供垂直空间?

在我的应用程序中,我必须根据每个视图垂直布局两个视图,并希望确保它们在 iPhone 4 和 5 中看起来相似。这是代码:

我试图做的是在 nextShowView 和 playerView 之间留出 15 点空间,从 playerView 底部到视图底部边缘留出 20 点空间。

请帮忙 !!!!

谢谢,

0 投票
2 回答
1092 浏览

ios - 使用 NSLayoutConstraints 均匀间隔任意数量元素的几行

我有一个关于在以下场景中使用布局约束的问题。一切都在代码中(没有笔尖或故事板)。我想创建一个包含任意数量的项目行的视图。每行包含任意数量的子视图。

为了创建这个视图,我想传入一个深度为两层的数组。第一级数组包含每一行。第二级数组包含每一行中的元素。因此,例如,这可能如下所示:

NSArray *elements = @[@[subview1, subview2, subview3], @[subview4], @[subview5, subview6]]

在这个数组中,将有 3 行:

1) 第 1 行:subview1、subview2、subview3
2) 第 2 行:subview4
3) 第 3 行:subview5、subview6

我希望将这些元素格式化为:

- 行都应该是它们父视图的全宽(为此我们可以假设它是屏幕的大小)
- 一行中的每个元素应该是相同的宽度并且它们之间具有相同的空间量(比如如果有 4 个元素,则 1&2 和 2&3 之间的空间可能是 10pt)
- 每行之间应该有相同数量的垂直空间(例如,每行之间的垂直空间为 10pt)

在上面的场景中,第 1 行将有 3 个等宽等间距的子视图,第 2 行将有 1 个占据行全宽度的子视图,第 3 行将有 2 个等宽且等间距的子视图分开。

所以,问题是,我该怎么做?!

我已经为此工作了一段时间,但我的理解似乎并没有变得更好。帮助将不胜感激!

0 投票
1 回答
1626 浏览

ios - 以编程方式向 UIImageView 添加约束

更新:这似乎与自动布局无关。即使我禁用自动布局,我仍然会得到相同的结果:(

我在UIImageView滚动视图中添加了一系列 s 并且在花费数小时试图诊断问题之后,我得出的结论是它必须是一个约束问题,它正在推动我UIImage的 s 下降。请看附图:

在此处输入图像描述

如您所见,由于我已将背景标记为红色,因此将UIImages 向下推。UIScrollView我还附上了我的约束图片UIScrollView

在此处输入图像描述

这是我的滚动视图的属性:

在此处输入图像描述

如何设置约束以UIImageView使其UIScrollView水平居中?我正在使用以下代码来填充UIScrollView图像。

0 投票
2 回答
363 浏览

core-animation - NSLayoutConstraint animation on MonoMac

I'm working in MonoMac and am attempting to animate the width and height constraint for a control dynamically on a button click. After reading the following pages, I'm assuming that I have to use the Animator proxy of my constraint. However, the following code doesn't seem to get the job done.

NSLayoutConstraint.constant ignoring animation http://cocoa-mono.org/archives/235/using-animator-with-frameorigin/

Code:

The result of this is the control has a width of newWidth but it is not animated--it changes immediately.

0 投票
3 回答
1728 浏览

iphone - 将不满足的 NSLayoutConstraints 的内存地址映射到 UI 控件

我很欣赏 XCode 会捕捉到无法满足的情况NSLayoutConstraints并为您提供一些有关它的信息,但是我不知道如何获取控件/约束的内存地址并将其映射到有问题的实际控件。

我的应用程序相当大(大约 20 个屏幕),其中一些是大型 UIViewControllers,其中包含多个子视图控制器。有些是带有自定义单元格的 UITableViews 和带有自定义单元格的 UICollectionViews。我花了很多时间来解决这个错误的原因(发生在横向旋转时)

这是来自我的控制台的信息:

如您所见,列出了内存地址。将这些粘贴到监视窗口的搜索栏中并没有透露太多信息。同样筛选线程和队列调用堆栈,我只在这个断点(异常断点)上得到反汇编代码。