Junior — Middle
Ist es möglich, die Verarbeitung von Benutzereingaben in der Benutzeroberfläche zu implementieren, wenn die Eigenschaft userInteractionEnabled auf false gesetzt ist?
sobes.tech KI
Antwort von AI
Wenn eine UIView oder ihre Unterklasse die Eigenschaft userInteractionEnabled auf false gesetzt hat, empfängt dieses Element und alle seine Kind-Elemente keine Interaktionsereignisse (Taps, Gesten usw.).
Wenn Sie jedoch Ereignisse verarbeiten möchten, trotz userInteractionEnabled = false, können Sie:
- Die Ereignisbehandlungs-Methoden im Eltern- oder einem anderen Controller überschreiben.
- Gesten (UITapGestureRecognizer und andere) verwenden, die dem Eltern-View hinzugefügt wurden, das
userInteractionEnabled = truehat. - Eine transparente Schicht darüber erstellen, die die Ereignisse abfängt.
Direkt auf dem Element mit userInteractionEnabled = false ist die Ereignisbehandlung nicht möglich, da das System die Ereignisse nicht an es weitergibt.