2011-10-30 20 views
5

Mam hosta tab z trzema zakładkami. W pierwszej zakładce wykonuję operacje bitmapowe na płótnie (bit heavy). Za każdym razem, gdy przechodzę do drugiej lub trzeciej zakładki, działanie w tej zakładce jest puste. Mam tekst edycji w zakładce 1, więc gdy tylko pojawi się klawiatura miękka, pozostałe karty działają poprawnie. Myślę, że to dlatego, że okno dostaje ponownie rozmiar po uruchomieniu miękkiej klawiatury. Myślę, że jeśli będę w stanie zmienić rozmiar lub odświeżyć kartę 1, będę mógł zobaczyć zawartość poprawnie w pozostałych kartach. Jest tam jakikolwiek sposób, w jaki mogę zmienić rozmiar bieżące okno lub odśwież okno. Próbowałem ustawić szerokość i wysokość za pomocą LayoutParams, ale nie jest to właściwie zmiana rozmiaru. Również zakładki zaczynają działać poprawnie, kiedy zmieniam orientację prawdopodobnie dlatego, że cały host karty zostaje ponownie utworzony. Czy jest ktoś, kto ma podobny problem?Aktywność na hoście tabulacji jest pusta

Każda pomoc zostanie doceniona.

Odpowiedz

3

Możesz odświeżyć zawartość tabulatora wybierając zakładkę za pomocą opcji FLAG_ACTIVITY_CLEAR_TOP. Więc kiedy tworzysz karty, po prostu dodaj je do specyfikacji Tab.

tabHost.addTab(tabHost.newTabSpec("tab1") 
         .setIndicator("myTabName") 
         .setContent(new Intent(this, MyTabContent.class) 
         .addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP))); 
0

Jeśli używasz wewnątrz aktywności wewnątrz karcie płótnie, upewnij się, że wymiary są zawsze poprawne na odtworzenie widoku - Log wartości pierwszej i obserwować, gdzie i kiedy szerokość i wysokość nabyć nowe wartości. Najczęstsze punkty błędów to onDraw i onMeasure

Powiązane problemy