我的约束在UITableViewCell内不起作用,尽管没有警告,并且如果我在设备之间进行切换并进行旋转,则布局在界面生成器中也可以正常工作。
我做了什么:
我创建了一个名为SearchResultCell的UITableViewCell。我想在右侧布置一个按钮,在左侧布置两个标签,这些标签应水平填充整个空间,直到该按钮为止。
最初,我只是将视图放置在那里,无论我定义了什么约束,所有视图始终都出现在模拟器的左上角。
然后我尝试将它们嵌入堆栈视图。将两个标签放到垂直堆栈视图中,然后与按钮一起放到水平堆栈视图中。然后,我定义了约束,以使最外面的堆栈视图可以填充整个父视图,即,我将底部,尾部,顶部和前导约束设置为0。
同样,在界面生成器中,它总是正确显示:
Layout works correctly in interface builder
但是,一旦启动,这些约束似乎就不会被应用。
How it looks like in simulator
唯一(轻微)的改进是,由于有了堆栈视图,现在按钮在标签旁边。但是,无论我如何尝试,都无法在UITableViewCell内使用约束。
我在这里做错了什么?我没看到。