Witam,
Piszę swoje pierwsze zadanie na androida i nie mogę za bardzo zrozumieć jak mam to rozwiązać:
Czytałem o tym, że każde Activity ma swoje stany, ale nie mam za bardzo pomysłu na rozwiązanie tego.
Override każdą metodę cyklu życia
i w każdej dodaj jakiś log np.
Log.d("[<DateTime.now>] [<nazwa stanu - overridowana metoda>]");
gdzie <DateTime.now>
https://developer.android.com/guide/components/activities/activity-lifecycle.html
Łopatologicznie w każdym callbacku logujesz nazwę i timestamp
@ekhart: @bolson
W dalszym ciągu nie do końca kumam o co chodzi. Dobrze to zrobilem?
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main3_);
Log.d("[" + timeStamp + "]", "[onCreate]");
}
@Override
public void onResume() {
super.onResume(); // Always call the superclass method first
Log.d("[" + timeStamp + "]", "[onResume]");
}
@Override
public void onPause() {
super.onPause(); // Always call the superclass method first
Log.d("[" + timeStamp + "]", "[onPause]");
}
@Override
protected void onStop() {
// call the superclass method first
super.onStop();
Log.d("[" + timeStamp + "]", "[onStop]");
}
Generalnie ok. Pierwszy parametr metody Log.d to jest tag, także dobrą praktyką jest używanie jako tagu stałej wartości (ułatwia to filtrowanie logcata).
Teraz wytłumaczcie chłopakowi jak logcata włączyć.
@ekhart: @bolson
Generalnie zrobiłem te nadpisanie dla tych 7 stanów: onCreate, onRestart, onStart, onResume, onPause, onStop, onDestroy
i wypisuje sobie w taki sposób:
Tylko jak cofne buttonem w telefonie i powróce do drugiego widoku to ta cała lista mi sie resetuje i gdy znowu wchodze do 3 widoku to zaczyna mi wypisywac od początku tak:
Tak ma być, ogólnie jest dobrze?