Swift, für einige UIViews zum Gesamtcontroller, wenn auf @ geklickt wi
Ich habe einDotBoss:UIViewController
Es gibt ein Dutzend UIView in der Szene,Dot:UIView
(Einige sind direkte Unteransichten, andere befinden sich weiter unten.)
Es gibt sogarcontainer views in der Kette zwischen dem höchsten Controller und den Punktelementen.
Das Dutzend Punktgegenstände wissen, ob sie getippt sind ...
class Dot:UIView
{
private var tap:UITapGestureRecognizer? = nil
override func awakeFromNib()
{
tap = UITapGestureRecognizer(target:self,
action: #selector(SnapDot.handleTap(_:)))
self.addGestureRecognizer(tap!)
}
func handleTap(g:UITapGestureRecognizer)
{
print("user tapped on this particular Dot...")
}
}
Ich möchteDotBoss
zu wissen, wann einer derDot
wird getippt.
class DotBoss:UIViewController
{
func oneDotWasClicked(d:Dot)
{
}
}
Wie mache ich das perfekt in Swift?
Hinwei Für alle, die hier googeln, ist diese sprudelnde Erweiterung bemerkenswert nützlich:https: //blog.veloxdb.com/2016/05/12/bubbling-events-using-uiresponder-in-swift