一般情况下 button添加背景图
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(60,100,20,40)];
[button setTitle:@”Test Button” forState:UIControlStateNormal];// Image with without cap insets
UIImage *buttonImage = [UIImage imageNamed:@”blueButton”];
[button addTarget:self action:@selector(buttonPressed:) forControlEvents: UIControlEventTouchUpInside];
[button setBackgroundImage:buttonImage forState:UIControlStateNormal];
[[self
view] addSubview:button];
如果我们的背景图尺寸和button frame的尺寸不是吻合的话。如果frame的尺寸大于背景图的尺寸,系统会自动拉升图片。
结果就是图片被放大,导致变形。(这不是我们所期望的,如果你有一个好的美工,想要什么图就给提供什么图的话,那么你就可以忽略下面的方法)
将上面的uiimage创建修改如下
UIImage *buttonImage = [UIImage imageNamed:@"blueButton"]resizableImageWithCapInsets:UIEdgeInsetMake(0,10,0,10)];
原文:http://blog.csdn.net/u011894803/article/details/44700387