iOS开发——高级技术&生成二维码

 

生成二维码

 

因为项目里需要新增个功能,该功能用到了二维码技术。于是我便查阅了资料,先学习了二维码的生成。

我们使用libqrencode库来生成二维码。下载地址http://download.csdn.net/download/sjx19871225/5065683。下载下来后,我们将整个文件夹导入到项目中。

新建一个视图控制器QRCoder,导入QRCodeGenerator.h,然后创建它的根视图。在根视图上添加一个文本框和一个按钮,我们获得文本框内容,生成它的二维码图像。点击按钮,执行QRCode方法生成二维码。

 1 - (void)viewDidLoad

 2 {

 3     [super viewDidLoad];

 4     //根视图

 5     UIView *view = [[UIView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame];

 6     self.view = view;

 7     //文本框

 8     UITextField *textFielf = [[UITextField alloc] initWithFrame:CGRectMake(20, 20, 200, 50)];

 9     textFielf.backgroundColor = [UIColor yellowColor];

10     textFielf.placeholder = @"请输入文字";

11     textFielf.tag = 001;

12     [view addSubview:textFielf];

13     //按钮

14     UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(250, 20, 50, 50)];

15     [button setTitle:@"生成" forState:UIControlStateNormal];

16     button.backgroundColor = [UIColor orangeColor];

17     [view addSubview:button];

18     [button addTarget:self action:@selector(QRCode) forControlEvents:UIControlEventTouchUpInside];

19 }

 

在QRCode方法中,我们获得文本框中的内容,调用QRCodeGenerator的qrImageForString:imageSize:方法生成二维码图像,然后添加到视图上。
1 //生成二维码

2 -(void)QRCode{

3     UITextField *textFielf = [self.view viewWithTag:001];

4     UIImage *img = [QRCodeGenerator qrImageForString:textFielf.text imageSize:200];

5     UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(50, 70, 200, 200)];

6     imgView.image = img;

7     [self.view addSubview:imgView];

8 }

 

最后在应用程序的代理类中添加视图控制器。
 1 QRCoder *vc = [[QRCoder alloc] init]; 2 self.window.rootViewController = vc; 

运行结果截图:

iOS开发——高级技术&生成二维码

 

你可能感兴趣的:(ios开发)