Sobes.tech
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:

  1. Süsteem kutsub välja meetodi hitTest(_:with:) juur-UIView-l ja edastab puutetundmise koordinaadid.
  2. UIView kontrollib, kas puutetõrne punkt asub selle piiride sees (point(inside:with:)). Kui ei, tagastab nil.
  3. Kui asub, läbikäib UIView oma alamvaated tagurpidi järjekorras (ülevalt alla) ja kutsub neile hitTest(_:with:).
  4. Kui mõni alamvaade tagastab mitte-nil, tähendab see, et ta peab töötlema puutetõrnet.
  5. 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.