可调整大小的图像的便捷方法

时间:2013-04-23 10:05:57

标签: ios objective-c uiimage resizable

我的应用程序中有大量可调整大小的图像,我在整个地方使用它们。

他们中的大多数都有相同的边缘插图,但有些是不同的。

创建它们需要很多代码......

UIImage *buttonBGImage = [[UIImage imageNamed:@"buttonBG"] resizableImageWithCapInsets:UIEdgeInsetsMake(4, 4, 5, 4) resizingMode:UIImageResizingModeStretch];

这只是一行代码,但我必须去寻找所有的边缘插图等......

我正在尝试为它创建一个方便的方法。有点像...

UIImage *buttonBGImage = [blah resizableButtonBG];

这些最好的地方在哪里?我可以创建一个名为“ImageManager”的单例。这样,每个可调整大小的图像只会被实例化一次,然后将被保存在内存中。那有点矫枉过正吗?

我可以将一个类别添加到UIImage名为...

+(UIImage *)resizableButtonBG;

有人可以提供任何建议吗?我的单身人士的想法是好的吗?对使用Singleton有任何不利之处吗?

1 个答案:

答案 0 :(得分:3)

类别方法绝对是一个很好的解决方案。许多人使用它来创建在应用程序中的多个位置使用的字体和颜色。

不需要使用单身人士。没有关联的实例数据,因此您可以坚持使用返回相应图像的简单类别方法。