- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试制作 QR 应用程序,但我没有完成最后一步。
今天,当我进行扫描时,我会收到有关结果的警报。我希望将该链接直接发送到我的 webview Controller 并在我的 webview 中读取地址而不是显示警报。
ViewController.swift
func reader(_ reader: QRCodeReaderViewController, didScanResult result: QRCodeReaderResult) {
reader.stopScanning()
dismiss(animated: true) { [weak self] in
let alert = UIAlertController(
title: "Hittade",
message: String (format:"%@", result.value, result.metadataType),
preferredStyle: .alert
)
alert.addAction(UIAlertAction(title: "OK", style: .cancel, handler: nil))
self?.present(alert, animated: true, completion: nil)
}
}
webview.swift
@IBOutlet var containerView: UIView? = nil
var webView: WKWebView?
override func viewDidLoad() {
super.viewDidLoad()
let myURL = URL(string: "MY RESULT URL HERE")
let myRequest = URLRequest(url: myURL!)
_ = webView?.load(myRequest)
}
编辑感谢@sharon 的帮助!
到目前为止,我已经这样做了。但是,有一些错误信息
查看下面的链接图片
ViewController.swift
func reader(_ reader: QRCodeReaderViewController, didScanResult result: QRCodeReaderResult) {
reader.stopScanning()
dismiss(animated: true) { [weak self] in
let alert = UIAlertController(
title: "Hittade",
message: String (format:"%@", result.value, result.metadataType),
preferredStyle: .alert
)
var qrLink: String?
qrLink = "\(result.value)\(result.metadataType)"
performSegue(withIdentifier: "WebView", sender: self)
alert.addAction(UIAlertAction(title: "OK", style: .cancel, handler: nil))
self?.present(alert, animated: true, completion: nil)
}
}
func prepare(for segue: UIStoryboardSegue, sender: Any?){
if segue.identifier == "WebView" {
let webView = segue.destination as! webview
webView.qrLink = "%@"
}}
func reader(_ reader: QRCodeReaderViewController, didSwitchCamera newCaptureDevice: AVCaptureDeviceInput) {
if let cameraName = newCaptureDevice.device.localizedName {
print("Switching capturing to: \(cameraName)")
}
}
func readerDidCancel(_ reader: QRCodeReaderViewController) {
reader.stopScanning()
dismiss(animated: true, completion: nil)
}
}
webview.swift
import AVFoundation
import UIKit
import WebKit
class WebView: UIViewController, QRCodeReaderViewControllerDelegate {
@IBOutlet var containerView: UIView? = nil
var webView: WKWebView?
override func viewDidLoad() {
super.viewDidLoad()
setNeedsStatusBarAppearanceUpdate()
view.backgroundColor = UIColor(red: 109/255, green: 167/255, blue: 215/255, alpha: 1)
var qrLink: String?
var webView: UIWebView?
super.viewDidLoad()
let myURL = URL(string: qrLink!)
let myRequest = URLRequest(url: myURL!)
webView = UIWebView(frame: CGRect(x: 0, y: 0, width:
UIScreen.main.bounds.width, height:
UIScreen.main.bounds.height))
webView?.loadRequest(myRequest)
view.addSubview(webView!)
}
}
最佳答案
好的,首先看一下这个答案,以编程方式将您的 webView 添加到 View 中(我认为最好从 Storyboard 中的对象库中提取一个): https://stackoverflow.com/a/31651004/4301118
可能有用的简单教程:
https://medium.com/@felicity.johnson.mail/web-view-tutorial-swift-3-0-4a5f4f6858d3
接下来在您的 Storyboard中,拉出一个 UIViewController 并将其链接到 webview.swift 类(以防您还没有这样做)。
按住 Control 键从 ViewController 拖动到您刚刚拉出的新 View Controller ,并为 segue 命名任何您喜欢的名称(我将其称为“webview”)。创建属性 var qrLink: String?
qrLink 将用于存储阅读器结果。现在,在 ViewController.swift 的阅读器函数中,将结果放入您刚刚添加的 qrLink 中,并通过添加这些行来触发 segue:
qrLink = "\(result.value)\(result.metadataType)"
performSegue(withIdentifier: "webview", sender: self)
像在 ViewController 中所做的那样,在您的 webview 中声明一个属性来存储 QR 链接。
接下来,也在 ViewController.swift 中添加这个函数:
func prepare(for segue: UIStoryboardSegue, sender: Any?){
if segue.identifier == "webview" {
let webView = segue.destination as! webview
webView.qrLink = "YOUR READER RESULT"
}}
WebView .swift
var qrLink: String?
var webView: UIWebView?
override func viewDidLoad(){
super.viewDidLoad()
let myURL = URL(string: qrLink!)
let myRequest = URLRequest(url: myURL!)
webView = UIWebView(frame: CGRect(x: 0, y: 0, width:
UIScreen.main.bounds.width, height:
UIScreen.main.bounds.height))
webView?.loadRequest(myRequest)
view.addSubview(webView!)
}
希望对您有所帮助。
关于ios - 在 Xcode 的另一个 ViewController 中打开 QR 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44632377/
我了解到 QRCODES 的字符数限制约为 4,290 个(约 4kb)。 这是真的吗?有什么方法可以增加它们的内存大小吗? 如果可能的话,我希望有更多空间:P 最佳答案 规范摘要如下: * ht
我越来越多地考虑使用 QR 码来传输二进制信息,例如图像,因为每当我演示我的应用程序时,它都会发生在 WiFi 或 3G/4G 无法工作的情况下。 我想知道是否可以将一个二进制文件分成多个部分,以便通
谁知道如何生成二维码?以及如何像这里一样装饰http://mojiq.kazina.com/ ? 最佳答案 试试这个教程 http://www.thonky.com/qr-code-tutorial/
我有以下 ZPL 代码,它打印带有字段数据 X50X-8091X-11111 的 QR 代码。 ^XA^PON^FWN^FO30,10^BQN,2,6^FDx50x-8091x-12345^FS^XZ
查找 Q 的其他正交列的最佳方法是什么?我已经计算了简化的 QR 分解,但需要完整的 QR 分解。 我认为有一个标准方法,但我一直找不到它。 您可能想知道为什么我需要完整的 Q 矩阵。我用它来将“自然
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 要求我们推荐或查找工具、库或最喜欢的场外资源的问题对于 Stack Overflow 来说是偏离主题的,因为
我使用 2 个不同的生成器工具生成了 2 个二维码,但输入数据相同。他们生成了完全不同的二维码。如果我扫描代码我得到相同的数据,所以看起来没问题,但我不确定这种现象的原因。 任何的想法? 编辑: 例子
我正面临一个我想不太熟悉的问题(因为,在谷歌上搜索,我没有发现任何提示)。我正在尝试使用 TCPDF 提供的类生成 QR 码。几乎一切正常。我能够生成任何类型的网站链接等。 但是当我尝试为“发送电子邮
我正面临一个我想不太熟悉的问题(因为,在谷歌上搜索,我没有发现任何提示)。我正在尝试使用 TCPDF 提供的类生成 QR 码。几乎一切正常。我能够生成任何类型的网站链接等。 但是当我尝试为“发送电子邮
我正在制作一个二维码阅读器,我遇到了 zxing lib。我能够成功地将它合并到我的项目中。但是,在使用该应用程序时,我注意到它需要另一个应用程序(即 qr droid 应用程序)才能使用它,否则应用
根据wiki ,Google 2 因素身份验证 key 应该是 16 个字符的 Base32 字符串。当我解码谷歌发给我的二维码时,我发现它符合 Key format specified by goo
为什么使用相同的网址时某些二维码看起来会有所不同? 最佳答案 QR 码有 40 种版本(大小)、4 个纠错级别和 8 种屏蔽可能性,为任何给定输入提供总共 1280 个可能的 QR 码。 通常根据要存
我正在开发 iOS 上的 QR 码扫描仪应用程序,我得到了输出 AVCaptureOutput关于委托(delegate)方法captureOutput:didOutputMetadataObject
我有一个可以扫描二维码的应用。 场景: 前往应用 点击“扫描”按钮 打开相机扫描二维码 我的问题是:我可以使用 Appium“模拟”QR 吗? 最佳答案 如果您有 QR code. Scenario
我们已使用 Unity 5.3.4f1 中的 ZXing.dll 和 Vuforia Unity SDK 5.5.9 实现了 QR 检测功能。我们在 GameObject 上有一个 QR 检测脚本,该
Warning: sharing your TOTP seed with third-parties breaks the very basic assumption of multi-factor
我正在使用 PHP QR 码 ( http://phpqrcode.sourceforge.net/ ) 创建 QR 码。它运行良好,但现在我需要一个自由空间来放置其中心的自定义图形或 Logo 。我
QR 二维码中插入图片 二维码终于火了,现在大街小巷大小商品广告上的二维码标签都随处可见,而且大都不是简单的纯二维码,而是中间有个性图标的二维码。 我之前做了一个使用google开源项目zxin
我对二维码字符表有点疑惑。规范摘要如下: Numeric only Max. 7,089 characters (0, 1, 2, 3, 4, 5, 6, 7, 8, 9) Alphanumer
我正在尝试为每个客户生成二维码。每个二维码都会给我创建一封电子邮件。我已经研究过并且我非常确定我了解如何最好地创建包含特定主题和正文的电子邮件。 创建用于创建电子邮件的 mailto 代码/脚本/行。
我是一名优秀的程序员,十分优秀!