簡體   English   中英

刪除android ListView的底部分隔符

[英]Remove the bottom divider of an android ListView

我有一個固定的高度ListView 它在列表項之間有分隔符,但它也在最后一個列表項之后顯示分隔符。

有沒有辦法在ListView的最后一項之后不顯示分隔符?

只需將android:footerDividersEnabled="false"到ListView描述中即可

正如@ScootrNova所說,這似乎在Android 4.4.x中表現不同(也就是bug)(我不知道問題何時出現)

這與使用padding + clipToPadding="false"特定情況有關 - 在4.4.x中,頁腳在視圖外部繪制,但是填充的剪輯顯示它。

我使用的解決方案是將頁腳過度滾動( android:overScrollFooter )設置為透明,以某種方式工作...

我的最終解決方案(請注意, android:footerDividersEnabled是為了兼容而保留的):

<ListView
    android:id="@android:id/list"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="@dimen/activity_horizontal_margin"
    android:divider="@color/divider"
    android:dividerHeight="1px"
    android:clipToPadding="false"
    android:scrollbarStyle="outsideInset"
    android:overScrollFooter="@android:color/transparent"
    android:footerDividersEnabled="false"
    />

在運行4.1.1的HTC One X,運行4.4.4的Nexus 5和運行4.4.2的三星Galaxy S5上測試(感謝@ Dallas187)。 似乎也在工作Lollipop。 (感謝評論者!)

如果你想通過代碼執行此操作:

listView.setFooterDividersEnabled(false);

如果你正在使用ListFragment,你可以通過以下方式獲得listview:

listFragment.getListView().setFooterDividersEnabled(false);

僅評論,因為這在谷歌中排名第一

看來下線不適用於lollypop設備。

listView.setFooterDividersEnabled(false);

所以需要使用下面的代碼來刪除列表中最后一項之后的分隔符。

listView.setOverscrollFooter(new ColorDrawable(Color.TRANSPARENT));

使用background = @android:color / transparent。 完美的工作。 您仍然可以使用行布局的背景

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM