From adc2db9bb29e7f316c46b6de679db1522ffc9cc8 Mon Sep 17 00:00:00 2001
From: 杨锴 <841720330@qq.com>
Date: 星期五, 23 八月 2024 11:39:37 +0800
Subject: [PATCH] fix

---
 Pods/IQKeyboardManagerSwift/IQKeyboardManagerSwift/UIKitExtensions/IQUIView+Hierarchy.swift |   24 +++++++++++++-----------
 1 files changed, 13 insertions(+), 11 deletions(-)

diff --git a/Pods/IQKeyboardManagerSwift/IQKeyboardManagerSwift/UIKitExtensions/IQUIView+Hierarchy.swift b/Pods/IQKeyboardManagerSwift/IQKeyboardManagerSwift/UIKitExtensions/IQUIView+Hierarchy.swift
index 907f51f..6cea406 100644
--- a/Pods/IQKeyboardManagerSwift/IQKeyboardManagerSwift/UIKitExtensions/IQUIView+Hierarchy.swift
+++ b/Pods/IQKeyboardManagerSwift/IQKeyboardManagerSwift/UIKitExtensions/IQUIView+Hierarchy.swift
@@ -59,7 +59,7 @@
 
         var controllersHierarchy: [UIViewController] = []
 
-        if var topController: UIViewController = base.window?.rootViewController {
+        if var topController: UIViewController = base?.window?.rootViewController {
             controllersHierarchy.append(topController)
 
             while let presented: UIViewController = topController.presentedViewController {
@@ -156,7 +156,7 @@
 */
     func superviewOf<T: UIView>(type classType: T.Type, belowView: UIView? = nil) -> T? {
 
-        var superView: UIView? = base.superview
+        var superView: UIView? = base?.superview
 
         while let unwrappedSuperView: UIView = superView {
 
@@ -207,7 +207,7 @@
         var tempTextFields: [UIView] = []
 
         //    Getting all siblings
-        if let siblings: [UIView] = base.superview?.subviews {
+        if let siblings: [UIView] = base?.superview?.subviews {
             for textField in siblings {
                 if textField == base || !textField.iq.ignoreSwitchingByNextPrevious,
                     textField.iq.canBecomeFirstResponder() {
@@ -227,7 +227,7 @@
         // Array of (UITextField/UITextView's).
         var textfields: [UIView] = []
 
-        for textField in base.subviews {
+        for textField in base?.subviews ?? [] {
 
             if textField == base || !textField.iq.ignoreSwitchingByNextPrevious,
                textField.iq.canBecomeFirstResponder() {
@@ -236,7 +236,9 @@
             // Sometimes there are hidden or disabled views and textField inside them still recorded,
             // so we added some more validations here (Bug ID: #458)
             // Uncommented else (Bug ID: #625)
-            else if textField.subviews.count != 0, base.isUserInteractionEnabled, !base.isHidden, base.alpha != 0.0 {
+            else if textField.subviews.count != 0,
+                    base?.isUserInteractionEnabled == true,
+                    base?.isHidden == false, base?.alpha != 0.0 {
                 for deepView in textField.iq.deepResponderViews() {
                     textfields.append(deepView)
                 }
@@ -261,7 +263,7 @@
 
         var canBecomeFirstResponder: Bool = false
 
-        if base.conforms(to: UITextInput.self) {
+        if base?.conforms(to: (any UITextInput).self) == true {
             //  Setting toolbar to keyboard.
             if let textView: UITextView = base as? UITextView {
                 canBecomeFirstResponder = textView.isEditable
@@ -271,9 +273,9 @@
         }
 
         if canBecomeFirstResponder {
-            canBecomeFirstResponder = base.isUserInteractionEnabled &&
-            !base.isHidden &&
-            base.alpha != 0.0 &&
+            canBecomeFirstResponder = base?.isUserInteractionEnabled == true &&
+            base?.isHidden == false &&
+            base?.alpha != 0.0 &&
             !isAlertViewTextField() &&
             textFieldSearchBar() == nil
         }
@@ -288,7 +290,7 @@
     */
     func textFieldSearchBar() -> UISearchBar? {
 
-        var responder: UIResponder? = base.next
+        var responder: UIResponder? = base?.next
 
         while let bar: UIResponder = responder {
 
@@ -329,7 +331,7 @@
     func depth() -> Int {
         var depth: Int = 0
 
-        if let superView: UIView = base.superview {
+        if let superView: UIView = base?.superview {
             depth = superView.iq.depth()+1
         }
 

--
Gitblit v1.7.1