如何在ListView中的禁用项之间添加分隔符? - 棒棒糖

Mar*_*lev 6 android listview expandablelistview android-listview android-5.0-lollipop

要在Lollipop之前的ListView for Android中禁用禁用项目(不可点击)之间的分隔符,我将覆盖适配器的方法areAllItemsEnabled()以返回true.但现在在Lollipop中,这种方法无法解决问题.分隔符在ExpandableListView中也是不可见的.

有没有办法解决这个问题而不在我的项目布局中添加分隔符?

小智 2

我们最终添加了两个 1dp 的视图来伪造分隔线并检查版本以设置可见性。问题更严重了。我们还需要跟踪下一行是否启用(如果是最后一行)。在已经有缺陷的 ListView 上有很多奶酪(例如与 UITableView 相比)。

if(isItemAvailable(item) || Build.VERSION.SDK_INT < Build.VERSION_CODES.LOLLIPOP) {
    rowView = inflater.inflate(R.layout.size_row, parent, false);
} else {
    rowView = inflater.inflate(R.layout.size_row_with_divider, parent, false);
}
Run Code Online (Sandbox Code Playgroud)