2010-10-07 12 views
8

Mam ExpandableListView (ELV) z grupami posiadającymi LinearLayout. Ustawiłem wysokość grupy na pewną wartość (38dip w tym przypadku, odpowiednik dwóch linii tekstu). Jeśli nagłówek grupy jest długi i zajęłby więcej niż 2 wiersze, nie jest wyświetlany prawidłowo w elemencie ELV - część widoku zostaje przewinięta. Z drugiej strony, jeśli zmienię android: layout_height na "wrap_content" w LinearLayout, grupy zawsze pokażą wszystkie linie. Ale szerokość linii jest zmienna, tzn. Krótkie tytuły pojawiają się tylko z 1 linią, a długie tytuły są wyświetlane z 2, 3 lub 4 liniami. To wygląda brzydko. Chciałbym zaimplementować wysokość, aby była czymś w rodzaju max ("38dip", "wrap_content"). Czy jest jakiś sposób na zrobienie tego?Dynamiczne dostosowanie wysokości nagłówków grup w ExpandableListView

Nawet programowo, nie wydaje mi się, aby uzyskać faktyczną wysokość grupy, jeśli ustawię android: layout_height na "wrap_content". Jakieś sugestie?

Odpowiedz

4

Nie można bezpośrednio rozwiązać problemu. Dodano następujące do pliku XML szablonu grupy:

android:paddingTop="7dip" 
    android:paddingBottom="7dip" 

sprawia, że ​​układ patrząc znacznie mniej zatłoczone, która jest co chciałem zrobić w pierwszej kolejności. Przechodzenie dalej - ale byłby zainteresowany, gdyby ktoś inny miał lepsze rozwiązanie.