调整堆栈视图中的按钮大小

时间:2017-05-21 10:51:29

标签: ios uibutton autolayout uistackview

所以我最近正在研究Swift / iOS开发,我在堆栈视图中调整按钮的大小有点麻烦,我有以下布局:

enter image description here

在垂直StackView中有两个TextField和一个按钮,StackView水平和垂直居中(有一点间距)。它是左右边距的锚定宽度方式。

我想减小按钮的大小,因此它大约是StackView宽度的80%。

我尝试过的事情:

  • 向按钮的宽度添加约束,这会导致冲突 使用StackView。
  • 添加子StackView,然后尝试设置它的左/右 将约束锚定为20,并认为它会给它一点点 余量。这又会导致与外层栈视图发生冲突。

我在故事板视图中而不是在代码中执行所有操作,因为我试图了解界面。

我有一个很好的搜索,似乎找不到任何适用的答案,如果它看起来很基本但道歉,但认为对于Xcode / Swift的新手来说,这可能是有益的。< / p>

3 个答案:

答案 0 :(得分:7)

试试这个..

  1. 删除按钮的前导和尾随约束。
  2. 将约束水平容器添加到按钮。
  3. 使用超级视图添加按钮的 Equal Width (我认为应该是堆栈视图)。像这样..按control +从StackView按钮拖动指针,然后从小弹出菜单中选择Equal widths

  4. 编辑 Equal Width 约束并将 Multiplier 设置为0.8

  5. enter image description here enter image description here

答案 1 :(得分:4)

  

对于那些试图调整stackView中某些视图高度的人,如下例所示:

enter image description here

首先,设置StackView的约束(宽度/高度,x,y),然后按如下方式设置StackView属性:

enter image description here

接下来,选择要调整大小的视图。即绿色,并添加这些约束:

enter image description here

然后只需向其他视图/按钮/标签添加更多约束。 在这个例子中,这里是蓝色和橙色视图的约束:

Constraints of the blue view

橙:

Constraints of the orange view

希望它有所帮助。

答案 2 :(得分:1)

按住“控制”按钮并单击并将要调整大小的按钮拖动到同一按钮,然后选择“宽度”和“高度”,以选择“添加约束”。这将为您提供一个图像大小按钮,因此您可以在Inspector中更改它。请记住将视图更改为“缩放至填充”。这是为我解决的。