Hiding ListView Header / Hiding Single Divider in

2019-03-15 07:39发布

问题:

I found this Hide footer view in ListView?. As Yoni poited out correctly, you can hide a header in a ListView by wrapping it into a FrameLayout and setVisibility() of the inner View to View.GONE. This works almost perfect for me, BUT: As the FrameLayout still exists, the ListView adds two dividers to the displayed list. It seems like a single divider with a height of two dividers. Is there a way to hide a single divider of a ListView? Maybe it's possible to change the divider's color to the background, that would be fine for me, too. Any complete other ideas? Perfect!

Please help me. I'm not keen on spending two more hours of trial and error.

Thanks a lot!

回答1:

you can change the dividers color like this:

     <ListView 
    android:id="@+id/android:list"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:divider="@android:color/transparent"
    android:dividerHeight="2px"/>


回答2:

Together with hiding or showing your header or footer, use these functions:

setFooterDividersEnabled()
setHeaderDividersEnabled()


回答3:

you can use xml attributes to hide divider for header and footer in ListView

android:footerDividersEnabled="false"
android:headerDividersEnabled="false"


回答4:

For disable divider:

ListView.setDivider(null);