AJ分享,必须精品markdown
二维码是一项项目中可能会用到的,iOS打开相机索取二维码的速度可不是Android能比的。。。(Android扫描二维码要来回来回晃。。。)框架
简单很少说,如何把一段资料(网址呀,字符串)变成二维码,直接上代码
步骤:
导入CoreImage框架 #import <CoreImage/CoreImage.h>
经过滤镜CIFilter生成二维码ui
#import "ViewController.h"
#import <CoreImage/CoreImage.h>
@interface ViewController ()
@property (weak, nonatomic) IBOutlet UIImageView *iv;
@end
@implementation ViewController
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
{
// 1.实例化二维码滤镜
CIFilter *filter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
// 2.恢复滤镜的默认属性 (由于滤镜有可能保存上一次的属性)
[filter setDefaults];
// 3.将字符串转换成NSdata
NSData *data = [@"http://www.itheima.com" dataUsingEncoding:NSUTF8StringEncoding];
// 4.经过KVO设置滤镜, 传入data, 未来滤镜就知道要经过传入的数据生成二维码
[filter setValue:data forKey:@"inputMessage"];
// 5.生成二维码
CIImage *outputImage = [filter outputImage];
UIImage *image = [UIImage imageWithCIImage:outputImage];
// 6.设置生成好得二维码到imageview上
self.iv.image = image;
}
@end