UIButton 被自动布局拉伸

Posted

技术标签:

【中文标题】UIButton 被自动布局拉伸【英文标题】:UIButton is getting stretched with Auto Layout 【发布时间】:2014-02-19 18:34:51 【问题描述】:

我正在 Xcode 5 中做一个应用程序,并且还使用自动布局, 初始布局非常简单,一个表格视图、一个文本字段和一个以 .png 作为背景的按钮。

当我在 4" 英寸设备上测试时,一切都很好, 但是当我在 3.5 上测试时,按钮变成了椭圆形。

tableView 有一个预设的 Height 和 Width 约束,所有其他对象都添加了基本约束。如果我尝试为 UIButton 添加高度/宽度,我会收到几个警告。 这是 UIButton 的屏幕截图和约束

【问题讨论】:

【参考方案1】:

如果你使用storyboard,就很简单了。

试试这个。

首先清除所有包含。 点击按钮后,点击关注我的图片。

Xcode 为您创建所有约束。 这对我有用。

【讨论】:

【参考方案2】:

这里的问题是您的按钮大小取决于视图的大小(顶部和底部空间)。

相反,尝试创建一系列看起来更像这样的约束:

Top Space to : Table View
Equals: 150

Horizontally Center Button in View

Button Height
Equals: 75

Button Width
Equals: 100

这组约束将创建一个具有设定大小 (100, 75) 的按钮,该按钮在您的视图中水平居中,并以 150 像素的间距放置在表格视图下方。

【讨论】:

以上是关于UIButton 被自动布局拉伸的主要内容,如果未能解决你的问题,请参考以下文章

自动布局 - 在模拟器中运行时文本字段垂直拉伸

自动布局是拉伸图像,自动布局,ios

横向使用自动布局的 iOS 拉伸视图

使用自动布局在屏幕更改时调整自定义单元格中的 UIButton 字体

设置垂直空间iOS时自动布局图像拉伸[重复]

使用 initWithFrame 创建 UIButton 或始终使用自动布局