您的位置:首页 > 产品设计 > UI/UE

重要经验一:比较两个UIImage是否相同

2014-01-11 19:57 260 查看
稍微算了一下,到2014年5月,我从事ios开发就3年了。这三年中,我经历 ios4.0 --- ios7.*、xcode3.2---xcode5.*,开发过几千行代码的小应用、也开发过几十万行代码的大应用,一步步的走来,对ios以及ios应用的开发的认识逐步加深。在开发应用的过程中,我遇到过许多艰难的问题,幸得到博友或者论坛友的帮助,在此对所有分享知识、经验的朋友表示感谢。

目测2014年又将是更加忙碌的一年,遇到的问题肯定会多、问题的难度肯定也会更大。在前行的路中,我会留下我的“手印”,与大家一起探索ios和ios开发的知识。(计划每2个星期写一篇文章)

ios中应用开发中,图片的使用是非常频繁的,其常用接口也是很简单的:imageNamed: 和 imageWithContentsOfFile:太简单了,或许不编程20年后,也仍然记得这两个接口。假如现在有个需求,要比较2张图片是否相同。

1,如果2张图片都被加载都resource中,而且图片名称已知,使用imageNamed:创建2个UIImage对象就好,然后用isequal去比较。

2,两张图片存储在ios沙盒的某个位置,未被加载到resource中,那怎么办呢?比较两个UIImage的data,看看是否相同。直接上关键代码了。

NSString* file = [dic stringByAppendingPathComponent:path];

UIImage *image = [UIImage imageWithContentsOfFile:file];

NSData *data1 = UIImagePNGRepresentation(image1);

NSData *data = UIImagePNGRepresentation(image);

if ([data isEqual:data1]) {

NSLog(@"is equae");

}

照片时间,是我个人开发的一款显示照片拍摄时间的应用,实用、免费、体积小。

http://itunes.apple.com/app/id571238224
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: