如何从emilsjolander禁用或不显示StickyListHeaders的任何标题

时间:2013-07-16 19:14:50

标签: android listview sticky

我使用https://github.com/emilsjolander/StickyListHeaders作为我的大部分应用的主要列表视图。我把这个listview放在我用于所有listview的一个布局中。但是,有些情况下我不想显示任何标题,我只想显示一个常规列表,如listview。

有没有办法将StickyListHeaders设置为根本不显示标题?有一些选项可以使标题不粘。我希望标题不显示,现有的API可能吗?

    @Override
    public View getHeaderView(int position, View convertView, ViewGroup parent) {
        // do nothing
        return null;
    }

    @Override
    public long getHeaderId(int position) {
        // do nothing
        return 0;
    }

4 个答案:

答案 0 :(得分:5)

实际上有更简单的方法

@Override
public View getHeaderView(int position, View convertView, ViewGroup parent) {
    return new View(parent.getContext());
}

答案 1 :(得分:2)

我有相同的要求,并且当getHeaderView返回null时,成功修补了StickyListHeaders,使其表现得像普通列表视图。直到现在,我还没有遇到这种变化的副作用: https://github.com/mtotschnig/StickyListHeaders/commit/9252a6fe5367bc2421739bb5d34856343236dd24

答案 2 :(得分:1)

尝试此操作以禁用粘性列表视图标题:

    @Override
    public View getHeaderView(int position, View convertView, ViewGroup parent) {
        HeaderViewHolder holder;
        holder = new HeaderViewHolder();
        convertView = inflater.inflate(R.layout.header, parent, false);
        holder.text1 = (TextView) convertView.findViewById(R.id.text1);
        convertView.setTag(holder);

        convertView.setVisibility(View.VISIBLE);
        String headerText = "";


        } else if (position > mainList.size() - 1) {
            headerText = "Categories";
        } else {
            headerText = "";
            return new View(getActivity());
        }

        holder.text1.setText(headerText);
        return convertView;
    }

答案 3 :(得分:0)

我最近也有这个要求,并最终修补了版本2.3.0的库以允许空标题:https://github.com/xlsior/StickyListHeaders/tree/null-headers