SetBackgroundImage太大UIButton swift

时间:2015-01-19 16:48:41

标签: ios xcode swift uibutton

我正在尝试在UIButton上的文本顶部获取图像。 我把图像作为背景图像放在UIButton上 并设置VerticalAlignment,图像现在位于文本上方:) 像这样:

button.imageView?.image
button.setBackgroundImage(image, forState: UIControlState.Normal)
button.titleLabel?.font = UIFont(name: "Cantarell", size: 14)
button.setTitle("Test", forState: UIControlState.Normal)
button.contentVerticalAlignment = UIControlContentVerticalAlignment.Bottom

唯一的问题是图像现在填满整个按钮,它看起来像垃圾和块状。我试图用Photoshop裁剪图像,它仍然填充按钮,看起来很块。我可以在swift中设置backgroundImage帧大小吗?

所以图像最终会像这样:

enter image description here

因此图像需要更小且更块。我在Photoshop中裁剪它并没有帮助。只是让它更块状。是否有.frame我可以设置按钮背景图像的大小?

2 个答案:

答案 0 :(得分:1)

您可以做的是先在故事板上拖动视图(而不是ImageView)。

之后,将ImageView拖动到视图和标签中。 现在,您可以使用align和pin将ImageView和Label放在View中的正确位置。

答案 1 :(得分:0)

这不是通过编程的解决方案,但我相信如果你在photoshop中打开图像并增加画布的大小,在外面添加更多蓝色,那么图像的白色部分将占用按钮中的空间较小,看起来不那么块状。

为此,您必须确保将图像视图的模式设置为纵横比或纵横填充,我相信。