Java, Android ustawianie nowego layout'a

0

Witam, jak można ustawić drugi raz layout programu? chodzi tu o funkcje

setContentView(R.layout.load);

Gdy używam jej pierwszy raz to jest ok (w funkcji

public void onCreate(Bundle savedInstanceState) 

).
jednak gdy używam drugi raz tej funkcji, program crash'uje. (użyłem ją w funkcji timera

class RunMenu extends TimerTask {
        public void run() {
setContentView(R.layout.main);
 timer.cancel();}}

).
Tzn. chciałem zrobić aby przy starcie programu przez kilka sekund był wyświetlany sam obrazek z logiem programu (do tego już użyłem timera). a później dopiero menu.

próbowałem też po prostu pobrać główny element ustawionego layoutu

MainView = (LinearLayout) findViewById(R.id.MainLay);
MainView.setBackgroundResource(R.drawable.tloload);

i ustawić startowe tło.
później w funkcji wywołania timera ustawić tło menu, i wszystkie potrzebne kontrolki ustawić na widoczne, jednak już przy próbie zmiany tła program crash,uje.

class RunMenu extends TimerTask {
        public void run() {
  MainView.setBackgroundResource(R.drawable.notes);
 timer.cancel();
}}

Dziękuje za każdą pomoc.

0

Musisz to wykonać na wątku UI więc użyj Handlera do tego.

Ogólnie poczytaj sobie o tym http://www.vogella.com/articles/AndroidPerformance/article.html

0

Ok, dzięki jakoś sobie poradziłem na podst. tego artykułu http://mojdroid.pl/4811/15-tworz-aplikacje-na-androida-z-mojdroid-pl-handler-czesc-druga-watkow

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