如何为UIButton创建的自定义背景艺术实现scale-9(9切片)

Boo*_*oon 6 uikit ios

为了对可变大小的UIButton使用相同的背景图像,我需要以编程方式做什么?(通常称为9切片缩放或缩放-9)

Eva*_*one 15

我知道这是一个老线程,但对于那些在iOS 5发布后偶然发现这一点的人,应该从Apple的文档中注意到,自iOS 5起,stretchableImageWithLeftCapWidth:topCapHeight:方法已被弃用:

弃用的UIImage方法

在iOS 5.0中不推荐使用.已过时.使用resizableImageWithCapInsets:相反,指定cap insets,使内部是1x1区域.

所以现在iOS 6已经宣布并且即将推出,任何为iOS 5及更高版本开发的人都应该看看resizableImageWithCapInsets,可以在这里找到哪些文档:

UIImage类参考 - resizableImageWithCapInsets

我想我会提到它,以帮助任何需要更新答案的开发人员.


Nat*_*tin 6

查看:

- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:(NSInteger)topCapHeight
Run Code Online (Sandbox Code Playgroud)

在UIImage类中.

如果我理解你正在寻找什么,这个允许你使用一个png来定义你的按钮的外观,它将垂直或水平拉伸到任何尺寸.