Flash Player 10.1 i nowsze wersje, Adobe AIR 2 i nowsze wersje
Gdy platforma Flash działa w środowisku, które obsługuje interakcje dotykowe, instancje klasy InteractiveObject mogą wykrywać zdarzenia dotyku i wywoływać funkcje obsługi. Co do zasady, obsługa zdarzeń dotyku, Multi-Touch i gestów odbywa się w języku ActionScript tak samo, jak obsługa innych zdarzeń (podstawowe informacje na ten temat zawiera sekcja
Obsługa zdarzeń
).
Aby jednak środowisko wykonawcze Flash interpretowało dotyk lub gest, musi działać w środowisku sprzętowym i programowym, które obsługuje interakcje dotykowe i Multi-Touch. Sekcja
Wykrywanie typów interakcji wejściowych
zawiera tabelę z porównaniem różnych typów ekranów dotykowych. Ponadto, jeśli środowisko wykonawcze działa w aplikacji będącej jego kontenerem (np. przeglądarce), wówczas informacje o interakcjach przekazywane są do środowiska wykonawczego przez kontener. W niektórych przypadkach środowisko sprzętowe i system operacyjny obsługują interakcje Multi-Touch, jednak przeglądarka zawierająca środowisko wykonawcze Flash sama interpretuje te interakcje i nie przekazuje ich do środowiska wykonawczego. Niekiedy przeglądarka całkowicie ignoruje interakcje.
Poniższy schemat ilustruje przepływ interakcji od użytkownika do środowiska wykonawczego:
Powiększ obraz
Przepływ interakcji od użytkownika do środowiska wykonawczego platformy Flash
Na szczęście interfejs API języka ActionScript służący do tworzenia aplikacji obsługujących interakcje dotykowe zawiera klasy, metody i właściwości umożliwiające określenie poziomu obsługi interakcji dotykowych lub Multi-Touch w bieżącym środowisku wykonawczym. Odpowiednimi wywołaniami służącymi do określania poziomu obsługi interakcji dotykowych są tzw. „mechanizmy wykrywające” obsługę zdarzeń dotyku.
Ważne pojęcia i terminy
Poniższa lista zawiera objaśnienia terminów istotnych w kontekście tworzenia aplikacji obsługujących zdarzenia dotyku.
-
Mechanizmy wykrywające
-
Metody i właściwości służące do sprawdzania, czy środowisko wykonawcze obsługuje zdarzenia dotyku i poszczególne tryby interakcji.
-
Zdarzenie dotyku
-
Czynność wykonana na urządzeniu dotykowym przy użyciu pojedynczego punktu kontaktu.
-
Punkt kontaktu
-
Punkt kontaktu z urządzeniem odpowiadający pojedynczemu zdarzeniu dotyku. Nawet jeśli urządzenie nie obsługuje gestów, może obsługiwać wiele punktów kontaktu naraz.
-
Sekwencja dotykowa
-
Szereg zdarzeń odzwierciedlających cały przebieg pojedynczego dotknięcia. Do zdarzeń tych należy: jedno rozpoczęcie, zero lub większa liczba ruchów i jedno zakończenie
-
Zdarzenie Multi-Touch
-
Interakcja na urządzeniu dotykowym obejmująca kilka punktów kontaktu (np. dotyk więcej niż jednym palcem).
-
Zdarzenie gestu
-
Interakcja na urządzeniu dotykowym polegająca na podążaniu za złożonym ruchem. Przykładem gestu jest dotknięcie ekranu dotykowego dwoma palcami i przesunięcie ich jednocześnie po wyobrażonym okręgu w celu wskazania obrotu.
-
Fazy
-
Wyróżnione punkty w czasie przepływu zdarzeń (na przykład rozpoczęcie i zakończenie).
-
Pióro
-
Przyrząd służący do interakcji z ekranem dotykowym. Pióro jest przyrządem bardziej precyzyjnym niż ludzki palec. Niektóre urządzenia rozpoznają wyłącznie interakcje z określonym typem pióra. Urządzenia, które rozpoznają interakcje z piórem, mogą nie rozpoznawać wielu jednoczesnych punktów kontaktu ani dotknięć palcem.
-
Naciśnięcie i stuknięcie
-
Szczególny rodzaj gestu Multi-Touch, w którym użytkownik przyciska palec do urządzenia dotykowego, a następnie stuka drugim palcem lub urządzeniem wskazującym. Ten gest jest często używany do symulowania kliknięcia prawym przyciskiem myszy w aplikacjach Multi-Touch.
Struktura interfejsu API do obsługi interakcji dotykowych
Interfejs API języka ActionScript służący do obsługi interakcji dotykowych został zaprojektowany z uwzględnieniem faktu, że faktyczna obsługa interakcji dotykowych jest uzależniona od platformy sprzętowej i programowej, na której działa środowisko wykonawcze Flash. Interfejs API do obsługi interakcji dotykowych zasadniczo spełnia zadania należące do trzech grup istotnych w kontekście pisania aplikacji dotykowych: wykrywanie obsługi, zdarzenia i fazy. Odpowiednio skoordynowane użycie elementów tego interfejsu API pozwala stworzyć przewidywalne i reaktywne mechanizmy interakcji z użytkownikiem — nawet jeśli na etapie tworzenia aplikacji nie jest znane urządzenie docelowe.
Wykrywanie obsługi
Mechanizmy wykrywania obsługi w ramach interfejsu API umożliwiają testowanie środowiska sprzętowego i programowego w czasie wykonywania aplikacji. Wartości wpisywane przez środowisko wykonawcze określają zakres interakcji dotykowych dostępnych dla środowiska wykonawczego Flash w bieżącym kontekście. Zestaw właściwości i metod służących do wykrywania obsługi umożliwia przygotowanie aplikacji do reagowania na zdarzenia myszy (zamiast zdarzeń dotykowych, jeśli niektóre rodzaje interakcji dotykowych nie są obsługiwane w środowisku). Więcej informacji można znaleźć w rozdziale
Wykrywanie obsługi interakcji dotykowych
.
Zdarzenia
W języku ActionScript zdarzenia dotyku obsługiwane są tak samo, jak pozostałe zdarzenia — za pomocą detektorów i funkcji obsługi. Jednak przy obsłudze zdarzeń dotyku należy wziąć pod uwagę dodatkowe uwarunkowania:
-
Ta sama interakcja może być interpretowana przez urządzenie lub system operacyjny na różne sposoby — albo jako sekwencja dotknięć, albo jako jeden gest.
-
Pojedyncze dotknięcie urządzenia dotykowego (palcem, piórem lub urządzeniem wskazującym) jest zawsze wywoływane również jako zdarzenie myszy. Aplikacja może obsługiwać zdarzenia myszy za pomocą typów zdarzeń zdefiniowanych w klasie MouseEvent. Można również zaprojektować aplikację w taki sposób, aby reagowała tylko na zdarzenia dotykowe. Bądź na oba rodzaje zdarzeń.
-
Aplikacja może reagować na wiele równoczesnych zdarzeń dotykowych lub obsługiwać każde z nich oddzielnie.
Zwykle mechanizmy wykrywania obsługi używane są do warunkowej obsługi zdarzeń w aplikacji. Gdy aplikacja rozpozna środowisko wykonawcze, może wywoływać odpowiednie funkcje obsługi lub wybrać właściwe obiekty zdarzeń odzwierciedlające interakcje użytkownika z aplikacją. Aplikacja może także wykryć brak możliwości obsługi konkretnego rodzaju interakcji w bieżącym środowisku i zaoferować użytkownikowi alternatywny sposób interakcji lub wyświetlić stosowną informację. Więcej informacji można znaleźć w sekcjach
Obsługa zdarzeń dotyku
i
Obsługa zdarzeń gestów
.
Fazy
W przypadku aplikacji dotykowych i Multi-Touch obiekty zdarzeń dotyku zawierają właściwości umożliwiające śledzenie kolejnych faz interakcji z użytkownikiem. Twórca aplikacji powinien napisać kod ActionScript obsługujący takie fazy, jak rozpoczęcie, aktualizacja lub zakończenie interakcji z użytkownikiem, co pozwoli na przekazywanie użytkownikowi stosownych informacji zwrotnych. Odpowiednia reakcja na fazy zdarzeń może polegać na zmianie wyglądu obiektów w miarę, jak użytkownik dotyka ekranu i przesuwa punkt kontaktu po ekranie. Fazy mogą także posłużyć do analizy charakterystyki konkretnego gestu, w miarę jak jest on wykonywany.
W przypadku zdarzeń odzwierciedlających punkt kontaktu możliwe jest określenie czasu, przez jaki użytkownik dotyka konkretnego obiektu interaktywnego. Aplikacja może śledzić fazy poszczególnych punktów jednoczesnego kontaktu z urządzeniem dotykowym i odpowiednio reagować na każdą z tych faz.
W przypadku gestów możliwe jest interpretowanie informacji o zachodzących przekształceniach gestu. Aplikacja może śledzić współrzędne punktu kontaktu (lub kilku punktów) przemieszczanych po ekranie.
|
|
|