Wszyscy znamy ładny obrazek ilustrujący cykl życia aktywności
Co się dzieje w konkretnych momentach pracy aplikacji ?
sobota, 24 listopada 2012
niedziela, 18 listopada 2012
Typowe zastosowania przesłaniania metod cyklu życia aktywności.
|
Czas wywoływania
|
Kiedy przesłaniane
|
Opis i uwagi
|
|
onCreate
|
||
|
Wywoływana, kiedy aktywność jeszcze nie
istnieje i trzeba ją utworzyć.
|
Zawsze, przy czym należy wywołać metodę
super,
co zresztą dotyczy wszystkich przesłanianych metod cyklu życia.
|
Tu należy umieścić kod inicjujący.
Jeśli aktywność jest uruchamiana po raz pierwszy, nie ma zapisanego stanu
(przekazany obiekt Bundle to null ).
Jeśli aktywność wcześniej usunięto i
jest ponownie uruchamiana, może mieć stan ( obiekt Bundle to wartość
zapisana w ostatnim wywołaniu metody onSaveInstanceState ).
|
|
| ||
sobota, 17 listopada 2012
Metody cyklu życia aktywności
Metoda
|
Opis
|
Następna
metoda
|
onCreate
|
Wywoływana przy początkowym tworzeniu aktywności.
To tu należy przeprowadzić standardową statyczną konfigurację –
utworzyć widoki, powiązać dane z listami itd. Udostępnia też obiekt klasy Bundle
obejmujący wcześniej zamrożone stany aktywności (jeśli taki obiekt istnieje).
Następną metodą zawsze jest onStart
|
onStart
|
onRestart
|
Wywoływana po zatrzymaniu aktywności, ale przed jej ponownym
uruchomieniem.
Następna metodą zawsze jest onStart
|
onStart
|
Kompletne środowisko programistyczne
Pod adresem : http://developer.android.com/sdk/index.html
od jakiegoś czasu znajduje się kompletne środowisko do pisania, testowania i uruchamiania programów dla Androida.
czwartek, 8 listopada 2012
wtorek, 6 listopada 2012
Wprawka - przypomnienie ListView
Tym razem tak dla przypomnienia taka malutka wprawka z ListView
Programik bardzo prosty
Wyświetlana jest lista wypełniona elementami z tablicy.
Po wybraniu jednego z nich sprawdzane jest id wyboru i wyświetlany jest stosowny tekst w polu tekstowym.
Programik bardzo prosty
Wyświetlana jest lista wypełniona elementami z tablicy.
Po wybraniu jednego z nich sprawdzane jest id wyboru i wyświetlany jest stosowny tekst w polu tekstowym.
Kod źródłowy jak zwykle w linku poniżej
poniedziałek, 29 października 2012
Zgadula 10
Właśnie ukończyłem kolejną i chyba ostatnią wersję gierki
zgadula.
Zdaję sobie sprawę że jest to tylko wprawka pisana tak dla
poćwiczenia i wiele osób będzie miało co do tego projekciku wiele uwag.
W ustawieniach dodano:
- informację o graczu
„Nick”,
- znacznik „sms” czy w wysyłać info o wygranej,
- „nr tel.” – numer telefonu na jaki wysłać sms'a z wynikiem,
- znacznik „plik” – czy zapisać wynik w pliku lokalnym,
- „nazwa pliku” w jakim zapisać wyniki,
- znacznik „mail” – czy wysyłać maila z wygraną,
- „nazwa_mail” adres na jaki wysłać wynik.
Poza tym wyniki są zapisane w bazie danych a puknięcie w
dany wpis wywołuje menu podręczne z możliwością usunięcia wpisu.
Wiele zmian w aktywności wygrana.
Plik gotowego projektu do pobrania:
wtorek, 23 października 2012
Zmiana formy
Od następnego wpisu będę zamieszczał wyczerpujące komentarze w kodzie projektów a na blogu tylko informacje co i jak zrobiłem.
Planuje Zgadulę wyposażyć w :
- wysyłanie SMS o wygranej na wskazany nr telefonu
- wysyłanie maila o wygranej na wskazany adres
- zapisywanie do plików lokalnych rankingu
- zapisywanie rankingu w bazie SQL
- wysyłanie informacji o wygranej na serwis internetowy
Planuje Zgadulę wyposażyć w :
- wysyłanie SMS o wygranej na wskazany nr telefonu
- wysyłanie maila o wygranej na wskazany adres
- zapisywanie do plików lokalnych rankingu
- zapisywanie rankingu w bazie SQL
- wysyłanie informacji o wygranej na serwis internetowy
Aktywność Ustawienia
Jedna metoda odczytująca nazwę gracza
package pl.net.turka.android.develop.przyklad_04;
import android.content.Context;
import android.os.Bundle;
import android.preference.PreferenceActivity;
import android.preference.PreferenceManager;
public class Ustawienia extends PreferenceActivity {
private static final String OPC_NICK = "nick" ;
private static final String OPC_NICK_DOM = "";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.ustawienia);
}
/** Pobiera bieżącą wartość opcji Podpowiedzi */
public static String wezNick(Context kontekst) {
return PreferenceManager.getDefaultSharedPreferences(kontekst)
.getString(OPC_NICK, OPC_NICK_DOM);
}
}
Aktywność Wygrana
W zasadzie nic ciekawego
O wszystkich elementach było już wcześniej
Nowością jest odczytanie przekazanych parametrów i odczytanie danych o nazwie gracza
package pl.net.turka.android.develop.przyklad_04;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class Wygrana extends Activity implements OnClickListener{
Opis aktywności Gra.java
Na początku klasycznie import bibliotek i pakietów
package pl.net.turka.android.develop.przyklad_04;
import java.util.Timer;
import java.util.TimerTask;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
Opis aktywności Zgadula
Na początku jak zawsze import bibliotek i pakietów
package pl.net.turka.android.develop.przyklad_04;
import pl.net.turka.android.develop.przyklad_04.Gra;
import pl.net.turka.android.develop.przyklad_04.R;
import pl.net.turka.android.develop.przyklad_04.Ustawienia;
import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
Definicja klasy Zgadula informacja że będziemy korzystać z OnClickListener
Opis plików w Zgaduli
Na początek troszkę o ważnych plikach z naszego projektu.
Nasz program składa się z 3 layout ( widoków ) :
activity_zgadula.xml
gra.xml
wygrana.xml
Ekran activity_zgadula.xml jest ekranem startowym który
posiada 4 przyciski
poniedziałek, 22 października 2012
Przykład 04 Zgadula
Właśnie skończyłem szkic nowej wprawki.
Prosta gierka Zgadula.
Program w zależności od poziomu trudności generuje liczbę
całkowitą od 1 do 5, 10 lub 100.
Zadaniem gracza jest odgadnąć tą liczbę w jak najmniejszej
ilości razy i w jak najkrótszym czasie.
W następnym poście opiszę kod programu
Link do pobrania kompletnego projektu
piątek, 19 października 2012
Przykład 3 Prosty Kalkulator
Tym razem troszkę więcej zabawy.
Napiszemy prosty kalkulator który będzie składał się z dwóch
pól tekstowych do których wprowadzać będziemy liczby. Czterech przycisków odpowiedzialnych
za wybór działania +, -, *, /. Dwóch pól
tekstowych w których przedstawimy wyniki.
Skorzystamy też z pliku zasobów lokalnych strings.xml
Nasz layout będzie wyglądał następująco:
Przykład 2
Program z poprzedniego przykładu nie miał praktycznego
zastosowania a miał jedynie posłużyć do zapoznania się ze środowiskiem
programistycznym.
Dzisiejszy przykład jest też trywialny a ma pokazać w jaki sposób
do naszego programu dodać kolejne elementy interfejsu i jak z nich korzystać.
Nasz layout zmodyfikowałem w następujący sposób:
Zaczynamy
Zaczynamy.
Gotowy projekt programu można ściągnąć korzystając z linka na dole tego wpisu.
Po zainstalowaniu i skonfigurowaniu środowiska „eclipse” przyszedł czas na stworzenie pierwszego programu.
Po uruchomieniu środowiska wybieram kolejno:
Subskrybuj:
Komentarze (Atom)










