Я пытаюсь создать функцию, которая с учетом UIView рекурсивно повторяет все подпредставления, пока не найдет UIView типа T. Пока у меня есть:
func getType(from view: UIView) -> AdaptiveContainerView? {
for aView in view.subviews {
if let adapView = aView as? AdaptiveContainerView {
return adapView
}
else {
return getType(from: aView)
}
}
return nil
}
Теперь япытаясь преломить функцию, чтобы она получала тип UIView и возвращала его, если он найден. Под типом UIView я имею в виду:
class MyView: UIView {}
Мой первый подход -
func getGenericType<T, Q:UIView>(from view: UIView, ofType: T) -> Q? {
for aView in view.subviews {
if aView is ofType {
}
...
}
return nil
}
Однако у меня возникает следующая ошибка:
Use of undeclared type 'ofType'
Есть идеи?
Спасибо