1 timer dla różnych obiektów

0

Witam.
Mam taki problem: załóżmy ze mam 3 obrazki. I chciałbym aby kazdy z nich np. co 1 sek. zmieniał swoje połozenie. Wiadomo ze do tego trzeba uzyc timera. Tylko ja bym chciał aby kazdy z obrazków zmieniał połozenie z lekkim opóźnieniem w stosunku do poprzedniego tj. obrazek 1 zmienił sie po 1 sek. a po np.0,1 sek zmienił sie obrazek 2 a kolejneym upływie 0,1 sek zmienił sie obrazek3(i potem od poczatku co dałoby wrazenie ze zmieniaja sie w różnej odstepach czasu). Czy w tym celu musze dla kazdego obrazka zrobic oddzielny timer, czy jest może jakies opóźnienie timera dla kazdego z obrazków? Jezeli nie ma do stworze te 3 timery ale to chyba zajełoby za duzo pamieci, a jako ze tworze projekt na komórke to pamieć trzeba wyjątkowo oszczędzać:)

0

Zrób 1 timer co 0,1 sek, a każdą z akcji wywołuj co 10 tyknięć (różnie przesuniętych).

0

Ee jak moge wywołać akcje co kilka tyknięć? Używam czegoś takiego

Timer timer = new Timer();
TimerTask task = new MyTask();

public class MyTask extends TimerTask 
{
	 public void run() 
	 {
		//tu przesuwam obrazek
	 }
}

no i wywołuje

timer.schedule(task,10,10);

czyli co 0,1 sek wywołuje sie to co jest w metodzie run w klasie MyTask. Więc jka mam wywołac różne akcje co kilka tyknięć? Mógłbym tak zrobić, ze co 0,1 sek zmienia sie wartosc zmiennej int x; i wtedy za pomocą if sprawdzac jaka jest wartosc zmiennej x i w zależności od wartosci zmieniac położenie odpowiedniego obrazka ale to chyba nie jest zbyt dobry pomys(hehe pisząc tego posta wpadłem na ten pomysł z ifami:) ;P

btw: ;P - na minka mnie rozpi**dala:)

0

no pewnie że z tym x-em. Sprawdzasz resztę z dzielenia przez 10 i jak jest 1, to ruszasz pierwszym obrazkiem, 2 drugim itp.

Chociaż wiadomo, możesz też zrobić tegi x'sa tak, że jak jest 10 to zerujesz i od początku zamiast dzielić. Nie wiem dlaczego miałby to być zły pomysł. na pewno szyszy niż kilka timerów.

1 użytkowników online, w tym zalogowanych: 0, gości: 1