Intern
Ako reagujú aplikácie na stlačenia tlačidiel?
sobes.tech AI
Odpoveď od AI
Udalosť touch, ktorú odosiela operačný systém, sa spracováva.
Proces:
- Používateľ sa dotkne obrazovky.
- iOS zaznamená udalosť
UITouch. - Udalosť sa odošle hlavnému oknu (
UIWindow). - Okno odovzdá udalosť reťazcu responderov (
Responder Chain). - Stlačenie tlačidla (
UIButton) je rozpoznané ako udalosťUIControlEventTouchUpInside. UIButtonzavolá pripojenú metódu spracovateľa (target/action).
Príklad:
// Priradenie target/action pre udalosť "stlačenie tlačidla vo vnútri"
button.addTarget(self, action: #selector(buttonTapped), for: .touchUpInside)
// Definujeme metódu spracovateľa
@objc func buttonTapped() {
// Logika po stlačení tlačidla
print("Tlačidlo stlačené!")
}
Reťazec responderov (Responder Chain):
UIView(tlačidlo)- Superview (
superview) tlačidla - Kontrolér zobrazenia (
UIViewController) - Okno (
UIWindow) - Delegát aplikácie (
UIApplicationDelegate)
Udalosť sa pohybuje nahor reťazcom, kým nie je spracovaná alebo odmietnutá. UIButton zvyčajne spracováva touchUpInside sám.