如何让Android不计算ListView的节标题?

时间:2015-07-05 17:47:50

标签: android android-listview

我正在使用此列表:https://github.com/bhavyahmehta/ListviewFilter,我发现当我在'A'部分有三行而'B'部分有两行时 - 'B'部分的第一行有第五行而不是4.如何强制它不计算节标题?

 public int getRealPosition(int position){
    int sectionHeaders = 0;
    for (Integer i : mListSectionPos){
        if (position > i){
            sectionHeaders += 1;
        }
    }
    Log.i("ASD-truepos", String.valueOf(sectionHeaders));

    return position - sectionHeaders;
}

2 个答案:

答案 0 :(得分:0)

您可以尝试覆盖getCount()类中的方法PinnedHeaderAdapter

@Override
public int getCount() {
    return mListItems.size();
}

您可以返回mListItems.size() - 1或进行一些计算以了解标头是否存在,然后返回正确的值。

如果执行此覆盖,请在实例化类的时刻执行此操作,或者可以添加扩展PinnedHeaderAdapter的Java类。

答案 1 :(得分:0)

我使用以下代码进行计算:

int total=listView.getCount()-listView.getHeaderViewsCount();