我的应用程序中有大量可调整大小的图像,我在整个地方使用它们。
他们中的大多数都有相同的边缘插图,但有些是不同的。
创建它们需要很多代码......
UIImage *buttonBGImage = [[UIImage imageNamed:@"buttonBG"] resizableImageWithCapInsets:UIEdgeInsetsMake(4, 4, 5, 4) resizingMode:UIImageResizingModeStretch];
这只是一行代码,但我必须去寻找所有的边缘插图等......
我正在尝试为它创建一个方便的方法。有点像...
UIImage *buttonBGImage = [blah resizableButtonBG];
这些最好的地方在哪里?我可以创建一个名为“ImageManager”的单例。这样,每个可调整大小的图像只会被实例化一次,然后将被保存在内存中。那有点矫枉过正吗?
我可以将一个类别添加到UIImage
名为...
+(UIImage *)resizableButtonBG;
有人可以提供任何建议吗?我的单身人士的想法是好的吗?对使用Singleton有任何不利之处吗?
答案 0 :(得分:3)
类别方法绝对是一个很好的解决方案。许多人使用它来创建在应用程序中的多个位置使用的字体和颜色。
不需要使用单身人士。没有关联的实例数据,因此您可以坚持使用返回相应图像的简单类别方法。