如何像在ios的UITableview中一样在android listview中绘制一个节头?

str*_*eam 15 android listview header

我想在android listview中绘制一些节头,就像Contacts app一样.当列表视图被拖动时,节标题将平移,谢谢.

use*_*305 19

只需在ListViews示例中查看此Android - Sectioned Headers,它就可以很好地描述如何在ListViews中实现Sectioned Headers.

Android的惊人,列表视图

Jeff Sharkey的SeparatedListAdapter

CommonsWare的MergeAdapter

谢谢.


Jas*_* PJ 12

在列表项布局中创建HEADER LAYOUT.我们使用VISIBILITY选项显示和隐藏HEADER LAYOUT.这将像节头一样.

在适配器"getView"方法中,使用前一个LIST ITEMS"名称字段"的第一个字母检查"名称字段的第一个字母(在您显示符合名称的情况下)".如果它隐藏了HEADER LAYOUT(带有文本视图),则显示HEADER LAYOUT,其中Header Text显示Name Field的第一个字母.

这是代码

String nameFirstLetter ="A"; //全局声明,而不是在getView中.

// getView String nameF = Name.slice(0,1);

 if(!nameFirstLetter.equals(nameF )){
        nameFirstLetter = nameF ;           
        holder.headerText.setText(nameFirstLetter );
        holder.headerLayout.setVisibility(View.VISIBLE);
    }else{
        holder.headerLayout.setVisibility(View.GONE);
    }
Run Code Online (Sandbox Code Playgroud)

这是在Android列表视图中显示节标题的最简单方法,但它不像Iphone节标题那样工作,即.当我们向上/向下滚动时,节标题与其他列表项一起隐藏.