Junior — Middle
Kuidas määrab rakendus, milline kasutajaliidese osa peab reageerima puutetundlikule puudutusele?
sobes.tech AI
Vastus AI-lt
iOS-is kasutatakse hit-testing mehhanismi, et määrata, milline kasutajaliidese osa peaks reageerima puutetundlikule puudutusele. Kui kasutaja puudutab ekraani, alustab süsteem juurvaate (UIView) ja kontrollib rekursiivselt, milline alamvaade asub puutepunkti all.
Protsess hõlmab järgmisi samme:
- Süsteem kutsub välja meetodi
hitTest(_:with:)juur-UIView-l ja edastab puutetundmise koordinaadid. - UIView kontrollib, kas puutetõrne punkt asub selle piiride sees (
point(inside:with:)). Kui ei, tagastab nil. - Kui asub, läbikäib UIView oma alamvaated tagurpidi järjekorras (ülevalt alla) ja kutsub neile
hitTest(_:with:). - Kui mõni alamvaade tagastab mitte-nil, tähendab see, et ta peab töötlema puutetõrnet.
- Kui ükski alamvaade ei sobi, tagastatakse ise UIView.
Sel viisil määrab rakendus täpselt, milline kasutajaliidese element asub kasutaja sõrme all ja on valmis sündmust vastu võtma.