Имея дьявола времени, пытаясь понять это. Я задал аналогичный вопрос здесь: Swift: получить все подвидности определенного типа и добавить в массив
В то время как это работает, я понял, что существует много подзапросов и под-sub-представлений, поэтому мне нужна функция, которая начинается с основного UIView, циклически проходит через все подзоны (и их подпункты до тех пор, пока их не осталось) и добавляет его в массив для пользовательского класса кнопок, который я назвал CheckCircle.
По сути, я хотел бы получить массив CheckCircles, который будет содержать все CheckCircles, добавленные к этому виду программно.
Любые идеи? Вот о чем я работаю. Кажется, это не добавляет Checkcircles в массив:
func getSubviewsOfView(v:UIView) -> [CheckCircle] {
var circleArray = [CheckCircle]()
// Get the subviews of the view
var subviews = v.subviews
if subviews.count == 0 {
return circleArray
}
for subview : AnyObject in subviews{
if let viewToAppend = subview as? CheckCircle {
circleArray.append(viewToAppend as CheckCircle)
}
getSubviewsOfView(subview as! UIView)
}
return circleArray
}