我试图实现类似的对话泡泡的strechable图像。然而我没有用下面的代码得到它的权利,的UIImage strechable图像生成消息气泡状的结果
:
的UIImage * ballon = [[UIImage imageNamed:@“strech.png”] resizableImageWithCapInsets:UIEdgeInsetsMake(12,11,12,9)];
我得到以下结果:
这是我原来的leftBubble.png
我该怎么办可能是做错了什么?
我试图实现类似的对话泡泡的strechable图像。然而我没有用下面的代码得到它的权利,的UIImage strechable图像生成消息气泡状的结果
:
的UIImage * ballon = [[UIImage imageNamed:@“strech.png”] resizableImageWithCapInsets:UIEdgeInsetsMake(12,11,12,9)];
我得到以下结果:
这是我原来的leftBubble.png
我该怎么办可能是做错了什么?
我不能jhilgert00的回答发表评论,但我想补充一点:-[UIImage resizableImageWithCapInsets:]
瓷砖内的像素,而不是拉伸,这就是为什么梯度不起作用,正如jhilgert00所说。
如果你使用的iOS 6.0或更高版本时,您可以使用-[UIImage resizableImageWithCapInsets:capInsets resizingMode:UIImageResizingModeStretch]
- (UIImage的*)resizableImageWithCapInsets:(UIEdgeInsets)capInsets
[中]像素在每个方向上不覆盖的区域被平铺, 从左到右和从上到下调整图像大小。
和
- (的UIImage *)resizableImageWithCapInsets:(UIEdgeInsets)capInsets resizingMode:(UIImageResizingMode)resizingMode
,如果你特别想你应该只调用此方法来代替其对应的你要使用UIImageResizingModeStretch调整大小模式调整图像大小。
你不应该在整个图像上有渐变。这就是线条的来源。你的图像中心(被拉伸的部分需要一个纯色,因为它是重复的,不仅是水平的,而且是垂直的)
如果你只是横向拉伸图像,你的图像miay已经工作。就好
试试这个图片我为你做的,并使用一些不同的capInsets:
UIImage *ballon = [[UIImage imageNamed:@"strech.png"]resizableImageWithCapInsets:UIEdgeInsetsMake(12, 20, 22, 12)];
通知我所有的造型发生在泡沫的边缘,中心我坚实。
编辑:
这是图像的缩图版本。我制作了更大的一个,这样你就可以看到我在做什么。
太棒了!非常感谢! – perrohunter