Praktyczny podstawowy kurs Android – menu, dialog, ikona

Jak pisałem poprzednim razem, stworzyłem kurs programowania na Android, na platformę Udemy. Ten wpis, jest drobnym rozwinięciem tego kursu, o informacje jak tworzyć podstawowe AlertDialog-i, edytować menu i zmienić je w menu składające się z ikon. Kilka wpisów tego typu – czyli wprost o tworzeniu aplikacji na Androida, może się zdarzyć, ale nie będą to jedyne tematy, które będą się pojawiały na tym blogu. Posiadanie kursu nie jest niezbędne, do zrozumienia tego o czym tutaj piszę (będę odnosił się do istniejącego kodu źródłowego), ale dalej zachęcam do kupna, najlepiej z tego kodu: https://www.udemy.com/praktyczny-podstawowy-kurs-programowania-android/?couponCode=BLOG_WPIS w cenie promocyjnej. To tyle tytułem wstępu, zapraszam do artykułu!

Dialog

A właściwie AlertDialog, pod taką nazwą ukrywa się po prostu – wyskakujące okienko. Implementacja w moim przypadku wygląda następująco:

Krótko ją omawiając, AlertDialog tworzymy korzystając z wzorca projektowego – builder. Wzorzec ten umożliwia stworzenie obiektu, poprzez ustawianie kolejnych właściwości obiektu, a następnie przez wywołanie metody create (w tym przypadku, metoda ta najczęściej nazywa się build). W ramach właściwości dodaje się też przyciski (positive, neutral, negative), a także interfejs onClick, który jako parametr przyjmuje gotowy obiekt. W naszym przypadku, po kliknięciu ok, ukrywamy okno (metoda dismiss). Po zakończeniu tworzenia obiektu bardzo ważne jest, aby wywołać metodę show. Cały ten blok kodu jest podpięty pod menu kontekstowe (pierwotnie 3 kropki w prawym górnym rogu), które również się zmieniło.

menu dialog

Menu

W trakcie trwania kursu, chyba tylko raz wspomniałem o menu, pora trochę rozbudować te informacje. Menu tworzymy w plikach xml w folderze res/menu. Tam znajdują się domyślnie tworzone „menu per aktywność” (poniższy plik to menu_main.xml), tak wygląda ono obecnie:

Co mamy tutaj interesującego:

  • orderInCategory – oznacza kolejność w jakiej mają być wyświetlane elementy, od lewej do prawej, lub od góry do dołu w zależności od tego jaki sposób wyświetlania wybraliśmy. Kolejność ta jest rosnąca, czyli najpierw wyświetliło by się 100, następnie 200 (gdybyśmy mieli taki parametr), etc.. Liczby te można oczywiście zamienić na 1, 2, 3…
  • icon – ikona, która została pobrana z tego serwisu, a następnie rozpakowana, można jej używać tak samo jak w aktywnościach (wspominałem o tym w kursie)
  • showAsAction – oznacza w jaki sposób powinien wyświetlać elementy naszego menu, dostępne możliwości to: [„ifRoom” | „never” | „withText” | „always” | „collapseActionView”]. Wybrany przeze „ifRoom” oznacza, wyświetlaj ikonę, kiedy na pasku znajduje się miejsce. Z racji tego, że mamy tylko jedną ikonę, miejsce znajdzie się zawsze, więc ikona zawsze się wyświetli (moglibyśmy użyć „always”). Poprzednio znajdował się tam parametr „never”, który oznaczał – zawsze zwijaj element do menu kontekstowego. Opis pozostałych elementów znajduje się tutaj.

To by było na tyle, jeśli chodzi o te dwa, podstawowe elementy interfejsu. Nie są skomplikowane, ale w kursie nie wspominałem o nich ani słowa, a że finalnie zostały użyte w aplikacji, chciałem coś o nich napisać. Po za tymi elementami w kodzie pojawiły się też minimalne zmiany kosmetyczne, można je podejrzeć w tym commicie. Oraz oczywiście została wydana aktualizacja, do wersji 1.1. Jeszcze raz zachęcam do kupna: https://www.udemy.com/praktyczny-podstawowy-kurs-programowania-android/?couponCode=BLOG_WPIS i liczę na to, że niedługo na stronie z kursem przybędzie opinii. Na blogu też wkrótce pojawi się następny tekst.