iPhone有九个补丁装载机吗?

n8g*_*ray 25 iphone graphics android uiimage nine-patch

Android有一个很好的方法来定义称为九补丁的可伸缩图像.有关概念的说明,请参阅这些文档.我们的想法是围绕一个带有1像素边框的png图像,您可以在其中定义可伸展区域和图像的填充尺寸.这绝对是非常棒的,我想在我的iPhone应用程序中使用这个想法.在将我自己的9补丁写入UIImage加载器之前,我想我会看看是否已经存在.谷歌没有回复任何结果,所以我没有太多的希望,但问一下并不痛苦,对吧?:-)

编辑:伙计们,我很欣赏答案,但我知道stretchableImageWithLeftCapWidth....我正在寻找采用路径@"foo.9.png"并返回可伸缩的代码UIImage.这段代码无疑会在stretchableImageWithLeftCapWidth...内部使用.我确信我可以使用该方法自己编写代码.但是我问其他人是否已经做过了.

n8g*_*ray 24

我收到了来自Tortuga22软件的电子邮件,他告诉我他们已经创建了这样一个库并在Apache许可下发布了它:

公告:http://blog.tortuga22.com/2010/05/31/announcing-tortuga-22-ninepatch/

源代码:http://github.com/tortuga22/Tortuga22-NinePatch

用法示例:

// loads-and-caches ninepatch and rendered image of requested size
UIImage buttonImg = [TUNinePatchCache imageOfSize:buttonSize 
                                forNinePatchNamed:@"buttonNormalBackground"];
[self.buttonNeedingBackground setImage:buttonImg
                       forControlState:UIControlStateNormal];
Run Code Online (Sandbox Code Playgroud)