如何使没有文本的 UIButton 成为其图像的大小?
Posted
技术标签:
【中文标题】如何使没有文本的 UIButton 成为其图像的大小?【英文标题】:How do you make a UIButton with no text be the size of its image? 【发布时间】:2021-10-07 11:00:20 【问题描述】:我在 Interface Builder 中创建了一个 UIButton
,它只包含一个 SF 符号,没有文本。按钮在图像周围绘制插图,这会影响它在约束下的定位方式。如何删除多余的空间,使按钮视图只有 SF Symbol 图像的大小?
【问题讨论】:
这能回答你的问题吗? Change a SF Symbol size inside a UIButton 不幸的是,同样的问题是按钮不采用 SF 符号的固有大小。 【参考方案1】:具有图像固有大小的按钮
默认情况下,按钮将采用图像的大小。但由于 SF-Symbols 是向量,它们可以缩放到任意大小。每个符号都有一些预定义的尺寸供您选择:
另外,您可以在代码中设置自己的尺寸:
let config = UIImage.SymbolConfiguration(pointSize: 160, weight: .bold, scale: .large)
let largeChevronImage = UIImage(systemName: "chevron.right.circle.fill", withConfiguration: config)
button.setImage(largeChevronImage, for: .normal)
添加或删除图像周围的额外空间
某些图像和 SF 符号在其内容周围有一些填充。您可以通过设置ContentEdgeInsets
来控制填充的大小
您可以剪裁边界以隐藏超出框架的内容
所有 SF-Symbol 的大小都相同
【讨论】:
以上是关于如何使没有文本的 UIButton 成为其图像的大小?的主要内容,如果未能解决你的问题,请参考以下文章