С помощью Swift и с конкретным объектом UIView
это может помочь:
func findFirstResponder(inView view: UIView) -> UIView? {
for subView in view.subviews as! [UIView] {
if subView.isFirstResponder() {
return subView
}
if let recursiveSubView = self.findFirstResponder(inView: subView) {
return recursiveSubView
}
}
return nil
}
Просто поместите его в свой UIViewController
и используйте его следующим образом:
let firstResponder = self.findFirstResponder(inView: self.view)
Обратите внимание, что результат является необязательным значением, поэтому он будет равен нулю, если в рассматриваемых представлениях не было найдено firstResponser.