Sobes.tech
Junior — Middle

Hoe kunnen grenzen worden ingesteld voor het verwerken van aanrakingen op een UIView-element?

sobes.tech AI

Antwoord van AI

Om de grenzen van aanrakingen detectie op een UIView in te stellen, kun je de methode point(inside:with:) overschrijven. Deze methode bepaalt of het aanrakingpunt binnen het gebied ligt waar de UIView op aanrakingen moet reageren. Standaard controleert hij of het punt binnen de bounds ligt.

Voorbeeld van overschrijving om het aanraakgebied met 20 punten rondom de view uit te breiden:

override func point(inside point: CGPoint, with event: UIEvent?) -> Bool {
    let margin: CGFloat = 20
    let largerBounds = bounds.insetBy(dx: -margin, dy: -margin)
    return largerBounds.contains(point)
}

Op deze manier kun je het gebied dat op aanrakingen reageert verkleinen of vergroten door je eigen grenzen te stellen.