当前位置: 首页 > 知识库问答 >
问题:

SwiftUI条形码不显示

雍马鲁
2023-03-14

我需要创建一个基于现有文本的条形码。我找到了许多解决方案,但没有一个工作,而不是条形码,我看到的只是一个白色矩形。这里是不工作的代码,但也许它会帮助您找到解决方案

struct TestBarCodeView: View {
    var body: some View {
        VStack {
            BarCodeView(barcode: "1234567890")
                .scaledToFit()
                .padding().border(Color.red)
        }
    }
}

struct BarCodeView: UIViewRepresentable {
    let barcode: String
    func makeUIView(context: Context) -> UIImageView {
        UIImageView()
    }

    func updateUIView(_ uiView: UIImageView, context: Context) {
        uiView.image = UIImage(barcode: barcode)
    }
}

共有1个答案

鄢选
2023-03-14

您需要在makeuiview中返回一个完全初始化的视图。

从文档中:

创建视图对象并配置其初始状态。

以下代码适用于我:

struct BarCodeView: UIViewRepresentable {
    let barcode: String
    func makeUIView(context: Context) -> UIImageView {
        let imageView = UIImageView()
        imageView.image = UIImage(barcode: barcode)
        return imageView
    }

    func updateUIView(_ uiView: UIImageView, context: Context) {
    }
}

updateuiview函数不执行任何操作,因为条形码属性不会更改。

 类似资料:
  • 我在尝试通过 barcode4j 库生成带有二维码的图像时遇到问题。我已经阅读了以下指南,但没有成功。所以这是我的代码: pom.xml 2.Main.java 模板. xsl 当我尝试启动应用程序时 我明白了 我做错了什么? 更新:我还想补充一点,我阅读了常见问题解答:4.1。FOP 扩展失败。但正如你所看到的,我把所有必需的库都添加到了我的pom.xml文件中。

  • 我有一个这样的数据帧: 现在,我想绘制水平条形图,其中平台名称位于相应的条形图中,使其看起来像这样: 我该怎么做?

  • 使用ML Kit的条码扫描API,您可以读取大多数使用标准条码格式编码的数据。 条形码是将信息从现实世界传递到应用程序的一种便捷方式。特别是,使用QR码等二维格式时,您可以编码结构化数据,如联系人信息或WiFi网络凭证。由于ML Kit可以自动识别和解析这些数据,因此当用户扫描条形码时,您的应用可以进行智能响应。 iOS Android 关键功能 阅读大多数标准格式 线性格式:Codabar,Co

  • 这是我在这里的第一个问题,所以我将尽可能与你相关。我对使用云视觉处理一些文档感兴趣,因为我需要OCR功能。我还碰巧需要读取条形码,我目前已经使用ZXing实现了这一点。 我在OCR中偶然发现了条形码块类型(https://cloud.google.com/vision/docs/reference/rest/v1/images/annotate#BlockType)但我没有成功地制作出这样一个块,

  • 我们在条形码生成方面面临一个问题。条形码未显示在 pdf 上并引发异常 请查找以下代码 pom.xml: 错误:图像不可用。URI:(内部流对象)。原因:org.apache.xmlgraphics.image.loader。ImageException:不支持该文件格式。找不到空的ImagePreloader(没有可用的上下文信息)。 请帮助我,是什么导致了问题。 预先感谢 致敬RKG

  • 当我在普通记事本中使用条形码扫描器时,它扫描的代码如下:。当我在中创建一个输入字段并将焦点放入该字段并扫描条形码时,它仍然输出正确的代码。 下面是我用来捕获按键事件的javascript代码: