使用8个图像在UIImageView周围创建边框

时间:2013-02-01 14:21:42

标签: iphone ios objective-c cocoa-touch uiimageview

我制作了8张图像,每个角落有4张图像,UIImageView的每一面都有4张图像。现在,我在地球上如何使它们“绕过”view,这样它们形成了一个漂亮,可伸缩的边框,就像这样(白线是我试图实现的边界): enter image description here

有关如何根据8个预设图像实现view边框的任何想法?

编辑:我不想绘制边框,我想使用我的8张图片!

1 个答案:

答案 0 :(得分:26)

这不是你要求的,但这是最接近你想要做的解决方案。

您应该拍摄8张图像并将它们合并为一张图像,然后使用resizableImageWithCapInsets:resizingMode:制作可调整大小的图像。

第一个参数允许您指定顶部,左侧,底部和右侧插图(即图像的大小)。

enter image description here

第二个参数确定区域是拉伸还是平铺。

拉​​伸
Stretched border

瓷砖
Tiled border

所以要使用它,你会做类似于

的事情
UIImage *myFullImage = [UIImage imageNamed:@"nameOfTheCombinedImage"];
UIImage *resizableImage = 
[myFullImage resizableImageWithCapInsets:UIEdgeInsetsMake(top, left, bottom, right)resizingMode:UIImageResizingModeTile];

(拉伸与瓷砖图片“借用”here