从iOS图像资源中读取文件数据

时间:2017-03-22 12:28:31

标签: ios xcode nsbundle uiimageasset

如何从iOS的图像资源中读取原始文件数据?

例如" Image"包含以下内容的图像集:

  1. 图标-1x.png
  2. 图标-2x.png
  3. 图标-3x.png
  4. 如何使用NSBundle或其他方法加载原始PNG文件数据(不解码图像数据),例如icon-1x.png?

1 个答案:

答案 0 :(得分:0)

在图像集中存储名称为icon-1x.png,icon-2x.png和icon-3x.png的图像。然后尝试使用此循环,

for (int i = 1; i <= 3; i++) {
    NSString *imgName = [NSString stringWithFormat:@"icon-%dx.png", i];
    UIImage *img = [UIImage imageNamed:imgName];
    NSData *pngData = UIImagePNGRepresentation(img); // Convert it in to PNG data
}

否则你可以从imageView的标签获取。然后传递那个标签值:

NSString *imgName = [NSString stringWithFormat:@"icon-%dx.png", imageView.tag];
UIImage *img = [UIImage imageNamed:imgName];
NSData *pngData = UIImagePNGRepresentation(img); // Convert it in to PNG data