2011-12-09 20 views
14

Moje pytanie jest proste. Mam linelayout. Ma pewne widoki podrzędne. Teraz chcę dodać widok na początku dziecka. Znaczy w normalnym addView (widok), widok jest dodany na końcu układu. Ale chcę dodać go na początku, na pierwszym miejscu. Dowolny pomysł...???android Jak dodać widok na początku układu?

+0

Możliwy duplikat [Jak dodać widok do początku układu liniowego w kodzie?] (Http://stackoverflow.com/questions/8270224/how-to-add-a-view-to-the- top-of-a-linear-layout-in-code) – Sufian

Odpowiedz

65

Korzystanie addView (View child, int index) z indeksu = 0

+1

i dodać na dole? myślę, że to -1 prawda? –

+4

Byłby to po prostu addView (Zobacz dziecko) –

+0

zrobiłem z -1 i działa. Nie próbowałem addView (View child) –

-2

utworzyć listę widoków, dodaj swój pogląd na niego, a następnie dodać wszystkie widoki z układu do tej listy usunąć wszystkie widoki z układu i dodać wszystkie widoki z listy

+0

Spowoduje to ułożenie widoków i widoku rodzica za każdym razem. Zużywa zbyt dużo pamięci i powoduje problemy z wydajnością. –

0

Należy rozważyć zbadanie argumentu indeksu metody addView w grupie ViewGroup klasy macierzystej, konkretnie addView(View child, ViewGroup.LayoutParams params). Ta metoda dodaje widok do układu nadrzędnego z zdefiniowanymi parametrami, indeks działa jako preferencja lub raczej punkt wstawienia widoku do układu.

Powiązane problemy