firstResponderのviewを取得するextension


firstResponderのviewを取得するextension


extesion UIViewController //あるいは UIView {
   func getFirstResponder(view: UIView) -> UIView? {
        if view.isFirstResponder {
            return view
        }
        return view.subviews.lazy.compactMap {
            return self.getFirstResponder(view: $0)
        }.first
    }
}

使いかた

getFirstResponder(view: self.view)?.resignFirstResponder()

参考

【Swift】firstResponderを取得する
https://qiita.com/wai21/items/edb795dc783ef779d642