2

我的应用程序中有一个带有背景图像的 UIButton,这个

在此处输入图像描述

我想让它更长,并将以下内容添加到我的代码中:

UIImage *backgroundButton = [UIImage imageNamed:@"Button.png"];
        [backgroundButton resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)];
        [backgroundButton imageWithAlignmentRectInsets:UIEdgeInsetsMake(10, 10, 10, 10)];

        [self.loginButton setBackgroundImage:[backgroundButton imageWithAlignmentRectInsets:UIEdgeInsetsMake(10, 10, 10, 10)] forState:UIControlStateNormal];

我试图设置一些边距来避免这种情况

在此处输入图像描述

我怎样才能得到与第一个按钮相同的结果但使用这个大小?提前感谢您的支持


**编辑*****

我将把这两种方法都提供给我们的开发人员

耶稣:

[self.loginButton setBackgroundImage:[[UIImage imageNamed:@"Button.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(10, 8, 10, 8)] forState:UIControlStateNormal];

游戏大会:

UIImage *modifiedBackgroundButton = [backgroundButton resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)];
        [self.loginButton setBackgroundImage:[modifiedBackgroundButton imageWithAlignmentRectInsets:UIEdgeInsetsMake(10, 10, 10, 10)] forState:UIControlStateNormal];

        [backgroundButton resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)];
        [backgroundButton imageWithAlignmentRectInsets:UIEdgeInsetsMake(10, 10, 10, 10)];

我喜欢这两个答案 耶稣非常精确,gameCon 使用我自己的代码来帮助我,谢谢大家的帮助!!!

结果: 在此处输入图像描述

4

2 回答 2

2

正如我们所看到的,您的拉伸背景图像实际上没有设置大写插图。您必须存储并处理此方法的结果(此代码实际上什么都不做):

[backgroundButton resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)];
[backgroundButton imageWithAlignmentRectInsets:UIEdgeInsetsMake(10, 10, 10, 10)];

所以正确的方法是:

UIImage *modifiedBackgroundButton = [backgroundButton resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)];
[self.loginButton setBackgroundImage:[modifiedBackgroundButton imageWithAlignmentRectInsets:UIEdgeInsetsMake(10, 10, 10, 10)] forState:UIControlStateNormal];
于 2013-10-10T23:32:03.843 回答
1

尝试这个:

[self.loginButton setBackgroundImage:[[UIImage imageNamed:@"Button.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 10, 10)] forState:UIControlStateNormal];
于 2013-10-10T23:36:36.543 回答