Aplikacja została wyposażona w menu, z którego jest bardzo łatwy dostęp do takich opcji, jak konfiguracja programu, historii obliczeń, obsługiwanych funkcji, możliwości zapisania aktualnego działania do pliku, otwarcia okienka informacyjnego na temat aplikacji, oraz możliwość jej zamknięcia. Menu zostało zaprezentowane na Rys 5.5.
W aplikacjach pisanych pod systemy Android przyjęło się, iż zamykanie jej następuje poprzez naciśnięcie przycisku fizycznego Wstecz. W aplikacji Kalkulator Plus przycisk ten służy tylko i wyłącznie do powracania do głównego okna aplikacji bez względu na to, jaki widok jest aktualnie otwarty. Z tego właśnie powodu w menu głównym aplikacji istnieje opcja o nazwie Zakończ.
ii |
WL |
Opcje |
Historia obliczeń |
71 |
m |
Obsługiwane funkcje |
Zapisz działanie |
T |
© |
0 programie... |
Zakończ |
Rys 5.5 Menu główne aplikacji, dostępne pod klawiszem Menu. Źródło własne.
2 |
menu.add |
(0, MENU OPTIONS, |
0, "Opcje"); |
3 |
menu.add |
(0, MENU_HISTORY, |
0, "Historia obliczeń"); |
4 |
menu.add |
(0, MENU_FUNCTIONS |
i, 0, "Obsługiwane funkcje") |
5 |
menu.add |
(0, MENU_SAVE, 0, |
"Zapisz działanie"); |
6 |
menu.add |
(0, MENU_ABOUT, 0, |
"0 programie..."); |
7 |
menu.add |
(0, MENU EXIT, 0, |
"Zakończ"); |
9 10 } |
return true; |
Listing 5.1 Kod w języku Java odpowiedzialny za wyświetlenie menu, wersja pierwsza. Źródło własne.
Menu dla aplikacji pisanych dla środowiska Android można utworzyć na dwa różne sposoby [11] (szerzej i w języku polskim zostało również opisane w [1]). Pierwszym z nich jest utworzenie wszystkich elementów w kodzie, co wygląda tak, jak to zostało przedstawione na następnym listingu (Listing 5.1).
1 public boolean onCreateOptionsMenu (Menu menu) {
Przedstawione rozwiązanie nie jest jednak tym, które autor niniejszej aplikacji wybrał za odpowiedzialne utworzeniu menu w programie, ponieważ posiada ono kilka niedogodności. Takie rozwiązanie nie sprzyja tworzeniu różnych wersji językowych aplikacji. Mimo, iż autor nie utworzył obsługi wielu języków, to w sposób wybrany przez niego będzie to w przyszłości bardzo prostym zabiegiem, ponieważ system Android doskonale wspiera wielojęzyczność aplikacji, korzystając z różnych zasobów, gdy telefon pracuje w różnych językach [10]. Jest to powód, dla którego najlepiej wszelkie stałe tekstowe, takie jak podpisy na
18