158
Rozdział 4.
Zmiana kodu metod
Zatrzymanie stopera w razie wstrzymania aktywności
Wróćmy do naszej aplikacji stopera.
Na razie zatrzymujemy stoper, kiedy aplikacja nie jest widoczna,
a następnie wznawiamy jego działanie, gdy aplikacja ponownie pojawi się
na ekranie. Robimy to, używając dwóch metod, przedstawionych poniżej:
onStop()
oraz
onStart()
:
@Override
protected void onStop() {
super.onStop();
wasRunning = running;
running = false;
}
@Override
protected void onStart() {
super.onStart();
if (wasRunning) {
running = true;
}
}
app/src/main
Stopwatch
Activity.java
Stoper
java
com.hfad.stoper
Spróbujmy zmodyfikować aplikację tak, by działała w identyczny sposób,
nawet jeśli będzie częściowo przesłonięta. Zadbamy o to, by stoper był
zatrzymywany, kiedy aktywność zostanie wstrzymana, i by ponownie
zaczynał mierzyć upływ czasu po jej wznowieniu. Jakie zmiany musimy
w tym celu wprowadzić w metodach cyklu życia aktywności?
Chcemy zatrzymać aplikację, kiedy aktywność zostanie wstrzymana,
i ponownie uruchomić (o ile wcześniej działała), kiedy działanie
aktywności zostanie wznowione. Innymi słowy, chcemy, by aplikacja
zachowywała się tak samo jak podczas zatrzymywania i ponownego
uruchamiania aktywności. Oznacza to, że zamiast powielania kodu,
który już umieściliśmy w kilku metodach, możemy zastosować jedną
metodę do obsługi wstrzymywania i zatrzymywania aktywności oraz
drugą metodę do obsługi jej uruchamiania i wznawiania.

Get Android Programowanie aplikacji. Rusz głową! Wydanie II now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.