代码之家  ›  专栏  ›  技术社区  ›  LightMan

加载ico图像会将红色通道切换为蓝色通道

  •  2
  • LightMan  · 技术社区  · 14 年前

    我就是这么做的: 我有一个favicon。我的资源中的ico(例如 http://google.com/favicon.ico )

    然后我有一个UIImageView,可以加载该图像。

    self.imgTestIcon.image = [UIImage imageNamed:@"favicon.ico"];
    

    模拟器或iPhone中显示的图像是相同的,但红色与蓝色切换。这可能是来自苹果的加载错误吗?

    我也直接从网上下载了同样的结果:

    self.imgTestIcon.image = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://google.com/favicon.ico"]]];
    

    谢谢大卫。

    2 回复  |  直到 14 年前
        1
  •  2
  •   Tim    13 年前

    我找到了这项工作:

    icon = [UIImage imageWithContentsOfFile:path];
    icon = [UIImage imageWithData:UIImagePNGRepresentation(icon)];
    

    基本上,文件是加载的,然后将其转换为PNG UIImage,并且可以正常工作。 不管怎样,我还使用了Libnsbmp库,然后使用了一些石英代码来集成它,它工作得很好,但我认为这项工作运行得更快。

        2
  •  0
  •   rpetrich    14 年前

    听起来这可能是一个合法的错误。

    Libnsbmp (这是一个例子)