iOS按钮可单击但不可见

iOS按钮可单击但不可见,ios,swift,uibutton,qr-code,Ios,Swift,Uibutton,Qr Code,我有一个视图(我们称之为scanView),可以打开相机扫描二维码。我在上面放了一个按钮,可以打开或关闭闪光灯。我面临的问题是,按钮被点击但不可见,也就是说,我可以通过点击我放置按钮的屏幕来打开或关闭flash,但按钮不可见。我检查了按钮的Alpha,尝试将子视图也带到前面。什么都不管用。这是否与iOS的QR阅读器有关? 以下是QR阅读器的实现: captureSession = AVCaptureSession() guard let videoCapture

我有一个视图(我们称之为scanView),可以打开相机扫描二维码。我在上面放了一个按钮,可以打开或关闭闪光灯。我面临的问题是,按钮被点击但不可见,也就是说,我可以通过点击我放置按钮的屏幕来打开或关闭flash,但按钮不可见。我检查了按钮的Alpha,尝试将子视图也带到前面。什么都不管用。这是否与iOS的QR阅读器有关? 以下是QR阅读器的实现:

        captureSession = AVCaptureSession()

        guard let videoCaptureDevice = AVCaptureDevice.default(for: .video) else { return }
        let videoInput: AVCaptureDeviceInput

        do {
            videoInput = try AVCaptureDeviceInput(device: videoCaptureDevice)
        } catch {
            return
        }

        if (captureSession.canAddInput(videoInput)) {
            captureSession.addInput(videoInput)
        } else {
            failed()
            return
        }

        let metadataOutput = AVCaptureMetadataOutput()

        if (captureSession.canAddOutput(metadataOutput)) {
            captureSession.addOutput(metadataOutput)

            metadataOutput.setMetadataObjectsDelegate(self, queue: DispatchQueue.main)
            metadataOutput.metadataObjectTypes = [.qr]
        } else {
            failed()
            return
        }

        previewLayer = AVCaptureVideoPreviewLayer(session: captureSession)
        previewLayer.frame = scanView.layer.bounds
        previewLayer.videoGravity = .resizeAspectFill
        
        scanView.layer.addSublayer(previewLayer)
        captureSession.startRunning()

正如你在上面看到的,为了清晰起见,我添加了背景色和背景图像。根据我的说法,这个按钮在层次结构上看起来很好。
在这个扫描视图上,我首先从我的xib文件添加按钮,它可能与QR阅读器的实现无关

第二,问问你自己这个按钮应该怎么看?标题形象

第三,您可以在运行应用程序时始终按下“调试视图层次结构”按钮,停止其执行并查看屏幕上显示的所有视图


“Debug View Hierarchy”(调试视图层次结构)按钮位于下面同一个调试工具窗格中,其他调试工具(如断点)位于该窗格中。

了解如何使用
调试视图层次结构,以便您可以清楚地看到按钮在屏幕上的位置以及为什么不可见

我认为你有一个按钮的图像问题,因为你可以点击按钮,但不能看到它,请确保图像正确地添加到按钮上


记住一件事,如果它是可点击的,那么它就在那里,专注于它的展示。另外,尝试向其添加背景色并删除图像,以确保其他实现正常工作。

我通过设置按钮的位置来解决此问题。感谢大家抽出时间

检查按钮的宽度和高度以及标题和背景图片,如果有anyHi@rana5ohaib。谢谢你花时间回答我的问题。请在我编辑的问题中查看上面的继承人身份图像在该图像中选择的图层,是您的按钮吗?层次结构确实显示它位于顶部并且可见,我想知道是什么使它在您的设备上不可见。还是看不见吗。。。你也能分享一下这个设备的屏幕截图吗?我通过设置按钮程序MaticallyHi@rommex的zposition解决了这个问题。谢谢你花时间回答我的问题。请看上面我编辑的问题中的继承人形象。此外,按钮是一个图像,与它是一个透明的图片无关,因为我尝试了不同的方法images@Shubham1212“隐藏”属性是否未加密?按钮的帧值是多少?是,隐藏属性未选中。按钮的帧值为:X:310,Y:20,宽度:50,高度:50i通过设置按钮的位置来解决问题programmatically@Shubham1212但是按钮停留在其他视图下方的原因是什么?那它怎么还能被敲打呢?