我正在使用Interface Builder创建应用程序。我想安排一组标签和相应的UISwitch,以使所有标签都显示在屏幕的左半部分,而开关在右侧。开关应与标签对齐。
为此,我尝试使用一个垂直堆栈视图,其中嵌入了多个水平堆栈视图(每个标签/开关对一个水平堆栈视图)。为了使标签和开关正确对齐,我将它们分别设置在一个空白的UIView中,并将它们(开关和标签)居中在适当的UIView上。然后将“堆栈视图”设置为“居中”对齐和“均等填充”分布。
使用此设置,我得到了适当的视觉布局,但是即使每个父视图都设置了“已启用用户交互”,也无法激活UISwitch。如果我直接将开关移到水平“堆栈视图”中(没有将其嵌入空白UIView中),则它可以正常工作,但无法使它居中放置。
如何获得所需的布局并仍然具有可用的UISwitches?
我见过this question,但似乎没有任何答案可以解决我的问题。
要复制:
运行应用程序时,布局是完美的。但是,即使每个连续的父视图都启用了用户交互,也无法与任何UISwitch进行交互。
答案 0 :(得分:1)
之所以不能与开关交互,是因为包含它的空白视图的高度为0。限制(空白)父视图的高度,以免将其调整为零或限制其大小。将顶部和底部切换到父级(值为0)。