如何使用背景图片创建UIButton
,该背景图片由以下内容组成:
像下面的例子一样?
编辑:我没有意识到,在中心没有N重复的图像,而只有一张拉长的图像。请参阅已接受的答案。
最佳答案
据我所知,这是不可能完成的。您可以做的是拉伸图像,但是不能添加n个中间图像。
在两者之间添加可拉伸图像的代码是
//Create an image - Where UIEdgeInsets is in top left bottom right
UIImage* buttonImage = [[UIImage imageNamed:@"button.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 16, 0, 16)];
// Create a custom buttom
UIButton *myButton = [UIButton buttonWithType:UIButtonTypeCustom];
myButton.frame = CGRectMake(0, 0, 100, buttonImage.size.height);
[myButton setBackgroundImage:buttonImage forState:UIControlStateNormal];
[myButton setTitle:@"Button" forState:UIControlStateNormal];
//Add it to view - if it is a view controller self.view
[self addView:myButton];
从苹果的UIImage Class Reference:“ resizableImageWithCapInsets:
您可以使用此方法向图像添加大写插入或更改图像的现有大写插入。 [...]在缩放或调整图像大小时,盖所覆盖的区域不会缩放或调整大小。取而代之的是,在每个方向上均未覆盖盖帽的覆盖的像素区域从左到右和从上到下平铺,以调整图像的大小。”
您可以在http://mobiledevelopertips.com/user-interface/ios-5-uiimage-and-resizableimagewithcapinsets.html了解更多信息
关于ios - 带有左右键帽和中间图案的UIButton,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11824603/