对iphone应用程序加载图像的工具类 ImageHelper

#import <UIKit/UIKit.h>


@interface ImageHelper : NSObject

@end


@interface ImageHelper (Files)

+ (UIImage *) imageNamed: (NSString *) aName;

+ (UIImage *) imageFromURLString: (NSString *) urlstring;

+ (NSArray *) DCIMImages;

+ (UIImage *) DCIMImageNamed: (NSString *) aName;

@end



#import "ImageHelper-Files.h"


@implementation ImageHelper

@end


NSString *documentsFolder()

{

return [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];

}


NSString *bundleFolder()

{

return [[NSBundle mainBundle] bundlePath];

}


NSString *DCIMFolder()

{

return [NSHomeDirectory() stringByAppendingPathComponent:@"../../Media/DCIM"];

}


@implementation ImageHelper (Files)


+ (NSString *) pathForItemNamed: (NSString *) fname inFolder: (NSString *) path

{

NSString *file;

NSDirectoryEnumerator *dirEnum = [[NSFileManager defaultManager] enumeratorAtPath:path];

while (file = [dirEnum nextObject]) 

if ([[file lastPathComponent] isEqualToString:fname]) 

return [path stringByAppendingPathComponent:file];

return nil;

}


// Searches bundle first then documents folder

+ (UIImage *) imageNamed: (NSString *) aName

{

NSString *path = [ImageHelper pathForItemNamed:aName inFolder:bundleFolder()];

path = path ? path : [ImageHelper pathForItemNamed:aName inFolder:documentsFolder()];

if (!path) return nil;

return [UIImage imageWithContentsOfFile:path];

}


+ (UIImage *) imageFromURLString: (NSString *) urlstring

{

NSURL *url = [NSURL URLWithString:urlstring];

return [UIImage imageWithData:[NSData dataWithContentsOfURL:url]];

}


+ (NSArray *) DCIMImages

{

NSString *file;

NSMutableArray *results = [NSMutableArray array];

NSDirectoryEnumerator *dirEnum = [[NSFileManager defaultManager] enumeratorAtPath:DCIMFolder()];

while (file = [dirEnum nextObject]) if ([file hasSuffix:@"JPG"]) [results addObject:file];

return results;

}


+ (UIImage *) DCIMImageNamed: (NSString *) aName

{

NSString *path = [ImageHelper pathForItemNamed:aName inFolder:DCIMFolder()];

return [UIImage imageWithContentsOfFile:path];

}

@end


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值