Sobes.tech
Middle

Kas yra iOS atsakymo grandinėje (responder chain)?

sobes.tech AI

Atsakymas iš AI

Atsakovo grandinė (responder chain) yra objektų seka, kurie paveldi iš UIResponder ir turi galimybę apdoroti įvykį.

Tipinė grandinė apima:

  1. UIResponder, kuris pradiniame etape gauna įvykį: Tai gali būti UIView (pavyzdžiui, mygtukas) arba UIViewController.
  2. Superview: Jei atsakovo neapdoroja įvykio, jis perduodamas jo superview.
  3. Vaizdo valdytojas (UIViewController): Jei superview neapdoroja įvykio, jis gali būti perduotas jo valdytojui.
  4. Langas (UIWindow): Jei valdytojas neapdoroja įvykio, jis perduodamas UIWindow objektui.
  5. Programėlė (UIApplication): Jei langas neapdoroja įvykio, jis perduodamas UIApplication objektui.
  6. Programėlės atstovas (AppDelegate): Jei UIApplication neapdoroja įvykio, jis gali būti perduotas jo atstovui.

Įvykio perdavimas vyksta iškviečiant atitinkamą įvykio apdorojimo metodą (touchesBegan(_:with:), motionBegan(_:with:) ir kt.) kitam grandinės atsakovo objektui, jei dabartinis atsakovas neapdorojo įvykio (t. y., jei metodo įgyvendinimas nekviečia super).