2

のグループアイテム間にギャップ(たとえば20dp)を追加するにはどうすればよいExpandableListViewですか?RelativeLayout親としてカスタムグループレイアウトがあります。親にマージンを追加しても効果はありません。

4

2 に答える 2

8

何を目指しているのかわかりませんが、ここにアイデアがあります

メインアクティビティで取得したリストをカスタムリストに渡します

MyExpandableListAdapter myAdapter = new MyExpandableListAdapter(expandableList);

カスタムリストクラスメソッド:

private ExpandableListView exp;

public MyExpandableListAdapter(ExpandableListView exp)
{
    this.exp = exp;
}

public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent)
{

    if (convertView == null)
    {
        LayoutInflater infalInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = infalInflater.inflate(R.layout.list_child, null);
    }

    exp.setDividerHeight(0);

    return convertView;

}


public View getGroupView(int groupPosition, boolean isExpanded, View convertView, ViewGroup parent)
{

    if (convertView == null)
    {
        LayoutInflater infalInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        convertView = infalInflater.inflate(R.layout.list_row, null);
    }

    exp.setDividerHeight(20);

    return convertView;
}

たとえば、これにより、子ではなくグループ間にスペースが追加されます。

于 2012-12-03T08:13:56.940 に答える
0

android:dividerHeight"将来的には、xmlレイアウトで、に追加するだけでなく、ExpandableListView仕切りの色を調整することもできます。

       <ExpandableListView
        android:id="@+id/expandableListView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:divider="@color/red"
        android:dividerHeight="5dp"
        android:indicatorLeft="? 
        android:attr/expandableListPreferredItemIndicatorLeft"
        />
于 2021-01-26T06:09:37.957 に答える