【发布时间】:2019-12-14 23:28:17
【问题描述】:
我正在研究UIButton 的子类,我们称之为MyButton。在大多数情况下,该子类的按钮将同时具有图像和标题。
我在配置 MyButton 的 imageView 大小时遇到问题。 目标是限制图片的大小,以便调整较大的图片大小并适合 32×32 的正方形。
出于测试目的,我添加了一个 128×128 像素的图像,并将 imageView 的 backgroundColor 设置为 green。
下面是我添加图片时按钮的样子。 imageView 及其image 的大小均为 128 x 128 像素。
在我用CGSize(width: 160, height: 50) 覆盖MyButton 的intrinsicContentSize 并将按钮的imageView 的contentMode 设置为.scaleAspectFit 后,imageView 调整了大小,但仅在高度上——它仍然是 128 像素宽,这会导致按钮的标题被截断。
我看过很多关于如何使用imageEdgeInsets 调整imageView 中的image 大小的文章。 这不是我要找的,因为在所有这些文章中,imageView 保留了它的大小,并且只在图像周围添加了填充。
更改imageView 的frame 或bounds 不会产生任何结果。
关于如何调整按钮的imageView 大小有什么想法吗?
【问题讨论】: