2015-07-07 6 views
2

Я пытаюсь установить ExpandableListView item (ViewGroup) высота. Можно ли установить с помощью XML (не нужна высота разделителя):ExpandableListView, как установить размер ребенка?

<ExpandableListView 
    android:id="@+id/lvExp" 
    android:layout_height="match_parent" 
    android:layout_width="match_parent"/> 

или его следует использовать этот метод, манипулируя convertView:

@Override 
public View getGroupView(int groupPosition, boolean isExpanded, View convertView, 
         ViewGroup parent) { ... } 

Спасибо авансовый.

ответ

2

взгляды ListView ребенка могут быть разной высоты, поэтому мы не делаем установите единицу размера для всех высот в xml ListView. Скорее вы можете установить определенную высоту в каждом из разных конверсий xml, которые вы накачаете.

+1

Спасибо, я использовал: «convertView.setPadding (0, 20, 0, 20);» вместо "convertView.setMinimumHeight (40);". – Kreshnik

0

Вы пытаетесь установить высоту элемента группы в списке? Также ViewGroup будет вашим ExpandableListView и всеми его группами и элементами группы детей.

Или вы хотите установить высоту дочерних элементов в виде расширяемого списка?

Элемент группы и ее дочерние элементы в представлении списка аналогичны любому другому элементу строки списка.
Вы можете просто обеспечить фиксированную высоту в строке макета XML:

android:layout_height="25dp"

Или вы могли бы использовать ViewGroup.LayoutParams

http://developer.android.com/reference/android/view/ViewGroup.LayoutParams.html

0

Вопрос немного устарел, но кому-то может быть полезно. Как говорили другие, высота не является строгой ценностью (она изменяется в соответствии с ее содержанием). Если вы хотите сделать больше пространства между элементами (будь то группа или ребенок), вы можете установить дополнение к соответствующим макетам.

Это можно сделать либо в макете XML, либо программно в списке адаптеров.

Смежные вопросы