带有左+右大写和中间图案的 UIButton

Posted

技术标签:

【中文标题】带有左+右大写和中间图案的 UIButton【英文标题】:UIButton with left+right caps and a middle pattern 【发布时间】:2012-08-06 08:07:49 【问题描述】:

如何创建一个UIButton,其背景图像由以下人员组成:

    一个固定的帽 一个固定的帽 许多中间图像一个接一个地放置以填满所有可用空间

像下面的例子一样?

编辑:我没有意识到在中心没有 N 个重复的图像,而只有一个拉伸的图像。查看接受的答案。

【问题讨论】:

中间图像是否像您的示例一样遵循固定模式?例如。 2 像素绿色和 2 像素白色? 嗨!不,大写和中间的图片都附上了,没有空格。 我在答案中添加了reference guide link。您可以指定可调整大小的中心部分是平铺还是拉伸 【参考方案1】:

据我所知,这是不可能的。你可以做的是拉伸一张图片,但你不能添加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:

您可以使用此方法向图像添加大写插图或更改图像的现有大写插图。 [...] 在缩放或调整图像大小的过程中,被帽子覆盖的区域不会被缩放或调整大小。取而代之的是,每个方向上没有被帽覆盖的像素区域被平铺,从左到右和从上到下,以调整图像的大小。”[强调] em>

您可以在http://mobiledevelopertips.com/user-interface/ios-5-uiimage-and-resizableimagewithcapinsets.html了解更多信息

【讨论】:

正是我需要的!感谢您的回答!

以上是关于带有左+右大写和中间图案的 UIButton的主要内容,如果未能解决你的问题,请参考以下文章

[SCOI2007]降雨量

带有选项的光滑左/右/外连接

打印 X型 图案 ---Java

打印 X型 图案 ---Java

mysql执行顺序及左连接和右连接

要布局左右两边定宽,中间自适应