Skip to content

Instantly share code, notes, and snippets.

@ashishkakkad8
Created April 23, 2023 10:56

Revisions

  1. ashishkakkad8 created this gist Apr 23, 2023.
    30 changes: 30 additions & 0 deletions PreventScrollViewScreenshot.swift
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,30 @@
    extension UIView {
    func preventScrollViewScreenshotRecursive() {
    guard superview != nil else {
    for subview in subviews {
    subview.preventScrollViewScreenshotRecursive()
    }
    return
    }
    let guardTextField = UITextField()
    guardTextField.backgroundColor = .red
    guardTextField.translatesAutoresizingMaskIntoConstraints = false
    guardTextField.tag = Int.max
    guardTextField.isSecureTextEntry = true

    addSubview(guardTextField)
    guardTextField.isUserInteractionEnabled = false
    sendSubviewToBack(guardTextField)

    layer.superlayer?.addSublayer(guardTextField.layer)
    guardTextField.layer.sublayers?.first?.addSublayer(layer)

    guardTextField.centerYAnchor.constraint(
    equalTo: self.centerYAnchor
    ).isActive = true

    guardTextField.centerXAnchor.constraint(
    equalTo: self.centerXAnchor
    ).isActive = true
    }
    }