Wzorzec interfejsu szybkich czynności systemu Android

100

Interesuje mnie wzorzec interfejsu użytkownika systemu Android o nazwie „Szybkie działanie”. Zasadniczo jest to menu kontekstowe, które nie zakrywa danych, na których działa. Chciałbym to zaimplementować, ale nie mogę znaleźć przykładowego kodu ani interfejsu API, który mógłby mi pomóc.

Zwróć uwagę, że ten wzorzec interfejsu użytkownika jest omówiony w filmie YouTube http://www.youtube.com/watch?v=M1ZBjlCRfz0#t=15m20s .

Czy ktoś ma implementację tego lub wie, jaki jest standard Google przy dodawaniu tego do aplikacji?

Jeremy Edwards
źródło
Dobre pytanie. Zastanawiałem się, jak oni to robią również w przypadku oficjalnej aplikacji na Twitterze.
DrBloodmoney
1
Tutaj jest również bezpośredni link do tego punktu w filmie: youtube.com/watch?v=M1ZBjlCRfz0#t=15m35s
DrBloodmoney

Odpowiedzi:

57

Dopóki oficjalna aplikacja Twitter nie zostanie udostępniona przez Google, możesz rzucić okiem na tę implementację: http://www.londatiga.net/it/how-to-create-quickaction-dialog-in-android/

Naprawdę łatwy w użyciu i działa świetnie.

Juri
źródło
3
(oficjalna aplikacja Twittera jest teraz utrzymywana przez sam Twitter ... nie będzie open source wbrew temu, co początkowo ogłosili)
Juri
Utworzyłem pasek szybkiego działania pomyślnie. Teraz chcę otworzyć menu kontekstowe po kliknięciu przycisków na pasku szybkiej akcji. W jaki sposób mogę to zrobić?
Adnan,
Zauważyłem, że ten przykład zawiesza się po dwukrotnym kliknięciu ikony.
JPM
3

Interesujące pytanie. Android używa tego wzorca w swojej aplikacji Kontakty. Możesz pobrać źródło za pomocą git:

git clone git://android.git.kernel.org/platform/packages/apps/Contacts.git

Zrobiłem to i szybko grepowałem, ale nie uzyskałem rozstrzygającego wyniku. Myślę , że zostało to zrobione w „Contacts / src / com / android / contact / ui / QuickContactWindow.java”, ale nie jestem do końca pewien.

Jeśli wyszukujesz w wyszukiwarce Google QuickContact android , istnieje wiele obrazów, które pokazują dokładnie taki rodzaj menu, jaki chcesz, więc wydaje się prawdopodobne, że w tym kontekście faktycznie nazywa się to QuickContact.

Patrząc na dokumentację , nie widzę żadnych dziedziczonych klas, których można by użyć do zrobienia czegoś innego niż kontakty.

A więc kilka punktów wyjścia, ale nie mam rozwiązania ;-)

pableu
źródło
3

Ten projekt typu open source ma taki sam wygląd i sposób działania wyskakującego okienka szybkiego działania jak aplikacja Twitter:

http://github.com/ruqqq/WorldHeritageSite/tree/master/src/sg/ruqqq/WHSFinder

Pomaga pobrać cały projekt, ponieważ potrzebujesz wielu rysunków, obrazów i innych zasobów z tego projektu.

Główna klasa demonstracyjna nosi nazwę WHSListActivity.java. Inne potrzebne klasy to QuickActionWindow.java i QuickActionItem.java.

Potem jest to naprawdę łatwe i działa świetnie. Używam go do moich aplikacji.

Josh Clemm
źródło
4
Ważne, aby pamiętać, że ta biblioteka jest na licencji GPLv3, więc jeśli nie chcesz otwierać całej swojej aplikacji, nie używaj jej.
Justin