• 银行卡扫描(基于swift)


    ①下载CardIO库

    ②将库文件解压,拖入工程,务必按下图勾选

    ③选中项目,target-->build Setting-->All    Other Linker Flags
        双击“+”,添加语句“-lc++”
    ④General,找到Linked Frameworks and libtaries
      添加库:
      AVFoundation
      AudioToolbox
      CoreMedia
      MobileCoreServices
      libCardIO.a
    ⑤CardScanner-->newfile-->Objective-c-->file-->CardBridgingHeader-->Finish-->Yes
      将.m文件删除
      在.h中# import "CardIO.h"
    ⑥Storyboard中
      1, 拖控件一个button和一个label分别创建button的方法和label的属性
      2,继承协议CardIOPaymentViewControllerDelegate并实现协议里的两个方法
        //用户取消扫描
          func userDidCancelPaymentViewController(paymentViewController: CardIOPaymentViewController!) {
              result.text = "Scan cancel"
              //关闭窗口
              paymentViewController.dismissViewControllerAnimated(true, completion: nil)
          }
          //用户确认扫描
          func userDidProvideCreditCardInfo(cardInfo: CardIOCreditCardInfo!, inPaymentViewController paymentViewController: CardIOPaymentViewController!) {
              if let card = cardInfo{
                  result.text = "卡号:(card.cardNumber) 过期年月:(card.expiryYear)年(card.expiryMonth)月 CVV:(card.cvv)"
              }
              paymentViewController.dismissViewControllerAnimated(true, completion: nil)
          }
      3,扫描按键的方法    
        @IBAction func startsacn(sender: AnyObject) {
             let cardvc = CardIOPaymentViewController(paymentDelegate: self)
              cardvc.modalPresentationStyle = UIModalPresentationStyle.FormSheet
              presentViewController(cardvc, animated: true, completion: nil)
          }
      4,真机调试可能会报错,关闭bitcode
        项目-->Build Setting-->All -->Enable Bitcode-->No
  • 相关阅读:
    Leetcode#104 Maximum Depth of Binary Tree
    Leetcode#102 Binary Tree Level Order Traversal
    js 实时显示字数
    js获取链接参数
    DIV+CSS左右列高度自适应问题
    css 背景透明,文字不透明
    css position的值
    从头搭建vue项目
    vuejs怎么在服务器部署?
    windows下nginx安装、配置与使用
  • 原文地址:https://www.cnblogs.com/luoxiaoxi/p/5044509.html
Copyright © 2020-2023  润新知