我找不到在ExpandableListView上隐藏分隔符的方法,也没有隐藏子分隔符。
这是我的代码。
<ExpandableListView
android:id="@+id/activities_list"
android:background="@android:color/transparent"
android:fadingEdge="none"
android:groupIndicator="@android:color/transparent"
android:divider="@android:color/transparent"
android:childDivider="@drawable/list_divider"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
使用此代码,我没有分组但没有子分隔符。如果我将android:divider
设置为"@drawable/list_divider"
,我会同时获得分组和子分组。
提前致谢!
答案 0 :(得分:1)
我找到的唯一解决方案是将子分隔符直接放入子XML中,这样:
<TextView
android:id="@+id/name"
android:layout_centerVertical="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<ImageView android:id="@+id/divider"
android:layout_alignParentBottom="true"
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="@drawable/list_divider" />
这非常非常丑陋但有效。
但是,应该有办法正确地做到这一点。
答案 1 :(得分:1)
expListView.setDivider(null);
expListView.setDividerHeight(2);
这将起作用
答案 2 :(得分:0)
将dividerHeight参数添加到xml布局中的ExpandableListView应该可以解决问题
答案 3 :(得分:0)
如何添加一行:
机器人:dividerHeight = “0dp”
实际上,我面临类似的问题。 PD要求分隔符和childDivider都存在且不同,这让我很烦恼。我也在寻找答案。
答案 4 :(得分:0)
在我看来: - 用XML删除分隔符:
android:divider="@null"
android:dividerHeight="0dp"
- View getGroupView(..,..,..,..)中的绘图分隔符:
View divider = new View(_context);
View dividerIDU = new View(_context);
RelativeLayout.LayoutParams rldivider = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.MATCH_PARENT, 1);
RelativeLayout.LayoutParams rldividerShort = new RelativeLayout.LayoutParams(
150, 3);
rldividerShort.setMargins(5, -1, 0, 0);
dividerIDU.setBackgroundColor(Color.RED);
divider.setLayoutParams(rldivider);
dividerIDU.setLayoutParams(rldividerShort);
divider.setBackgroundColor(Color.rgb(200, 200, 200));
((RelativeLayout) convertView).addView(divider);
((RelativeLayout) convertView).addView(dividerIDU);
- 可以在组位置后设置分隔符。