快速生成二维码

导入CoreImage框架 #import <CoreImage/CoreImage.h> 
通过滤镜CIFilter生成二维码

#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



你可能感兴趣的:(快速生成二维码)