【问题标题】:UIButton Vertical Align Bottom Not WorkingUIButton垂直对齐底部不起作用
【发布时间】:2018-06-01 10:49:19
【问题描述】:

UIButton 标题垂直对齐底部不起作用。该按钮位于表格单元格内。我尝试了几种方法。

  1. xib中,选择按钮,在右侧面板上,点击垂直底部对齐。

  2. xib中,选择按钮,在右侧面板上,选择标题插图并给出标题插图的数量。

虽然在故事板中,我可以看到按钮底部的对齐方式正确,但是,当在 APP 中打开时,它STILL 垂直居中对齐。

我也试试下面的代码:

// change to .alignBaseline still not working. same effect.
questTitleButton.titleLabel?.baselineAdjustment = .none 
questTitleButton.titleLabel?.numberOfLines = 1
questTitleButton.contentVerticalAlignment = .bottom
questTitleButton.contentHorizontalAlignment = .left

以上所有方法都不起作用。运行应用后,按钮仍然垂直居中。


我的解决方案

我可以让它工作的唯一方法是在内容插入区域中设置一个顶部插入。

现在我的问题是为什么?我阅读了很多帖子,但没有人遇到与我相同的问题。

this,或this。他们都有对齐文本的问题,但我尝试了他们的解决方案,只设置内容插入有效。

那么为什么我只能通过设置内容插入来将文本与按钮底部对齐?我在这里错过了什么吗?设置按钮时我做错了吗?我使用纯自动布局并在.xib 文件中创建视图。

按钮确实有高度限制,并且没有限制冲突或错误。一切似乎都很好。

【问题讨论】:

  • 你能在inspector中显示你的按钮约束吗?

标签: ios cocoa-touch uibutton uikit


【解决方案1】:

好吧,我刚刚遇到了完全相同的问题。仅向按钮添加了 x 和 y 约束,并且内容顽固地保持在其中心,即使其内容已经与故事板中显示的底部对齐。最后我想出了一个解决方案,切换到 size inspector,并在 content insets 的 top 值中添加 1,然后一切顺利。

【讨论】: