Vytváření interaktivních aplikací často vyžaduje začlenění rozpoznávačů gest do vašeho UIView, aby byly citlivější a uživatelsky přívětivější. To se může pohybovat od gest přejetí pro fotogalerii až po gesta dlouhých stisků pro vyvolání dalších možností. V následujících odstavcích se ponoříme do procesu přidávání rozpoznávačů gest ve Swiftu a provedeme jej krok za krokem, abychom vám tento proces rozebrali.
Nyní první věc, kterou musíme udělat, je vytvořit UIView, do kterého přidáme rozpoznávač gest. Pro tuto demonstraci použijeme UIView s názvem proměnné myView.
Přidání nástroje pro rozpoznávání gest do UIView ve Swiftu
Rozpoznávání gest ve Swiftu je klíčová funkce, která může výrazně zlepšit použitelnost a interaktivitu vaší aplikace. Swift poskytuje bohatou sadu rozpoznávačů gest, včetně klepnutí, sevření, otočení, přejetí, posunutí a dlouhého stisknutí.
[b]Chcete-li přidat rozpoznávač gest do UIView, musíte nejprve inicializovat rozpoznávač gest a poté jej přidat do UIView.[/b] To lze provést pomocí konstruktoru rozpoznávače a metody UIView addGestureRecognizer(). Chcete-li například přidat rozpoznávač dotykových gest, můžete:
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(self.handleTap(_:))) myView.addGestureRecognizer(tapGesture)
Dále definujte metodu zpracování gesta klepnutí:
@objc func handleTap(_ sender: UITapGestureRecognizer) { print("UIView tapped") }
Porozumění kodexu
Inicializace rozpoznávače gest vyžaduje dva parametry – cíl a akci, která se má provést, když je gesto rozpoznáno. Ve výše uvedené instanci UITapGestureRecognizer je cílem self, což znamená, že rozpoznávač gest hledá gesto klepnutí v aktuálním ovladači zobrazení. Akce handleTap(_:) je metoda, která bude volána, když je gesto identifikováno.
Jakmile je objekt rozpoznávání gest vytvořen, je třeba jej přidat do UIView pomocí metody addGestureRecognizer. Zde je myView UIView, do kterého chceme přidat gesto.
Splnění těchto kroků poskytne vašemu UIView schopnost rozpoznat a reagovat na konkrétní přiřazené gesto.
Další rozpoznávače gest: Posouvání, svírání, přejíždění a otáčení
Pochopení jednoduchosti přidávání rozpoznávačů gest do UIViews otevírá zcela novou řadu možností pro návrh interakce ve vaší aplikaci. Stejně jako jsme to udělali s rozpoznávačem gest klepnutí, Swift poskytuje třídy pro detekci dalších běžných gest:
- UIPanGestureRecognizer – Rozpoznává gesto posunu (přetažení).
- UIPinchGestureRecognizer – Rozpoznává gesto stažení (přiblížení nebo oddálení), které se běžně používá pro přibližování.
- UISwipeGestureRecognizer – Rozpozná gesto přejetí. Můžete definovat směr.
- UIRotationGestureRecognizer – Rozpoznává rotační gesto, kdy uživatel pohybuje dvěma prsty kolem sebe.
Závěrem lze říci, že přidání rozpoznávačů gest do UIView je jednoduchý, ale vysoce efektivní způsob, jak zvýšit funkčnost a interaktivitu vaší aplikace. S lepším pochopením procesu nyní můžete pro své uživatele vytvářet dynamičtější a interaktivnější pohledy.