1

我正在开发一个包含许多图像的 iOS 应用程序。因为我每时每刻都在我身边有一位设计师,我正在使用许多我不再需要的图像。

所以此刻,为了清理这个烂摊子,我在想:如果我使用一个类别,UIImage我可以重写+imageNamed:来记录图像的名称,也许是调用它的方法?

像这样的东西:

@implementation UIImage (FindImage)

+ (UIImage *)imageNamed:(NSString *)name {
  UIImage *img = [self imageNamed:name];

  if (img) {
    return img;
  } else {
    NSLog(@"\n\nImage not found: %@\n\n", name);
    return nil;
  }
}

@end

我想覆盖 imageNamed 因为:

  1. 我在许多不同的课程中使用它
  2. 我相信当 xib 加载图像时,它会调用此方法

在简历上,我的问题是:Can i log all images that could not be found on bundle?

编辑

细化我的问题:

我看到我的问题有点复杂,所以我将尝试阐明它。

我想找到我的应用程序尝试使用的所有图像,但在我的项目中找不到这些图像。我可以删除所有图像,我可以创建一个子类,我可以创建类别,我真的不在乎。也许Xcode上有一个标志来抱怨丢失的图像......

我想要的只是找到我使用图像的所有地方,并且在捆绑包中找不到该图像。

4

1 回答 1

1

您可以使用https://github.com/steipete/Aspects将日志记录指令注入到 +imageNamed 的末尾:

于 2014-12-17T10:34:53.027 回答