5

是否可以有一个自定义 UIButton 的图像只覆盖它的一半?我想它会是这样的:

UIButton *someButton = [UIButton buttonWithType:UIButtonTypeCustom];
[someButton setBackgroundImage:[UIImage imageNamed:@"buttonPicture"]];

/* Then there must be some property I can set that prevents the button from stretching the image?? */

.
.
.

我想要一个 50x100px 的按钮,它的上半部分只有一个 50x50px 的图像,而下半部分是透明的。

我知道如何创建自定义按钮和一切。我只是想知道控制背景图像拉伸的属性是什么。

谢谢!

4

2 回答 2

7

采用

[someButton setImage:[UIImage imageNamed:@"buttonPicture"] forState: UIControlStateNormal];
 someButton.imageEdgeInsets = UIEdgeInsetsMake(-50, 0, 0, 0);
于 2012-07-08T06:42:26.557 回答
1

我认为你可以:

  1. 将按钮图像创建为 50x100px 图像(与按钮大小相同);

  2. 使此图像半透明(带 alpha 的 PNG),

而不是试图为按钮分配一个较小的图像,只覆盖它的一半并防止拉伸。

于 2012-07-08T06:47:00.737 回答