使用自动布局减少文本字段周围的空间

Posted

技术标签:

【中文标题】使用自动布局减少文本字段周围的空间【英文标题】:Reduce space around a textfield using auto layout 【发布时间】:2016-11-19 19:48:52 【问题描述】:

我目前正在使用包含一些垂直对齐元素的 stackView。我在代码中做所有事情。

我已经标记了每个堆栈视图的子视图。截图如下:

这是stackview的代码:

func setUpVerticalLayoutStackView() 
    stackViewForVerticalLayout = UIStackView(arrangedSubviews: [viewTitleButton, stackViewForTheTwoPersons, owedButton, amountTextField, doneButton])
    stackViewForVerticalLayout.axis = .vertical
    stackViewForVerticalLayout.distribution = .equalCentering
    stackViewForVerticalLayout.alignment = .center
    stackViewForVerticalLayout.spacing = 20
    stackViewForVerticalLayout.translatesAutoresizingMaskIntoConstraints = false
    self.addSubview(stackViewForVerticalLayout)

我的问题是:为什么文本字段会占用这么多空间?我可以以某种方式减少它吗?

不要介意视图中心的“r”,它只是我在图像编辑器中错误添加的东西。

【问题讨论】:

根据您的需要将stackViewForVerticalLayout.distribution 更改为.equalSpacing.fillEqually。这将减小该字段的大小。 谢谢@Wes,这解决了。您能否将其写在答案中,以便我将其标记为正确并已解决? 没问题,谢谢! 【参考方案1】:

根据您的需要将stackViewForVerticalLayout.distribution 更改为.equalSpacing.fillEqually。这将减小该字段的大小

【讨论】:

以上是关于使用自动布局减少文本字段周围的空间的主要内容,如果未能解决你的问题,请参考以下文章

具有自动布局的 NSTextFields;像打字一样长进太空

带有图像和文本字段的自动布局表格单元格?

建议使用自动布局约束动态添加标签和文本字段的逻辑

通过文本字段上的自动布局调整字体大小并改变高度

iOS中文本字段和标签的自动布局

以编程方式在 xib 上使用自动布局创建的两个文本字段之间添加 uiview