AJ學IOS 之二維碼學習,快速生成二維碼

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
相關文章
相關標籤/搜索