【问题标题】:Increase UIButton Tap Area without Stretching Image在不拉伸图像的情况下增加 UIButton Tap 区域
【发布时间】:2019-03-02 23:35:18
【问题描述】:

我有一个带有小 (10x10) 图像的自定义按钮。我需要在不拉伸图像大小的情况下增加此按钮的点击区域。

将内容模式设置为 scaleAspectFit 会拉伸图像。 更改内容插图会拉伸图像。

当我增加按钮的大小时,我尝试的所有操作都会拉伸图像。

编辑:图像被设置为按钮的图像,而不是背景图像

编辑:这里有更多的截图解释。

^ 这里我选择了图片大小为 10x10 的按钮

^ 这里我增加了按钮的大小,但图像现在被拉伸了。

【问题讨论】:

  • 只需将按钮的图像放置为正面图像而不是背景图像。
  • @vaibhav 没有设置为背景图片
  • 你能用截图解释更多,你到底需要什么..
  • @vaibhav 请检查更新的问题。谢谢。
  • 好的,我看到了更新,我不知道您是如何将图像放在按钮上的,但是如果您将图像作为图像而不是背景放置,它将不会增加到原始大小,只需增加图像大小到 32x32 而不是 10x10 它太小而无法放置。

标签: ios swift xcode


【解决方案1】:

正如@vaibhav 在评论中添加的那样:在图像选项中设置按钮图像而不是在背景选项中:

之后,如果您增加按钮的大小,图像将不会拉伸。

请参考以下图片:

如您所见,图像大小为 20,按钮框架为 50。

【讨论】:

  • 感谢您的回答。但同样,我的按钮图像设置为图像而不是背景。请查看我更新的问题以获取屏幕截图。我的 10x10 图像仍在拉伸中。但它在达到 20x20 左右后会停止拉伸。
  • 如果图像会被拉伸,它会被拉伸到按钮的实际大小。如果获得空间,图像会扩展为其实际大小。请检查您的图片尺寸。
【解决方案2】:

您可以通过将按钮的 imageView 的 contentmode 设置为 .center 来做到这一点

your_button.imageView?.contentMode = .center

并设置按钮的图像

your_button.setImage(image, for: .normal)

文档

https://developer.apple.com/documentation/uikit/uibutton/1624033-imageview?changes=_4

【讨论】:

  • 这仍然会为我拉伸按钮图像。
猜你喜欢
  • 1970-01-01
  • 2014-04-07
  • 2023-03-12
  • 1970-01-01
  • 2012-10-26
  • 2015-05-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多