android - ListView 带有节标题问题

标签 android listview header

您好,我正在为我的 listView 添加部分标题,网络上的方法很少。由于我使用 simpleCursorAdapter 来管理我的 listView,所以我采用了 phil bogle 的方法。 http://thebogles.com/blog/2010/02/section-headers-for-android-listviews/

错误发生在这部分代码:

    listAdapter.setViewBinder( new SimpleCursorAdapter.ViewBinder()
    {
        public boolean setViewValue(View view, Cursor cursor, int
                                   columnIndex)
        {
              if (columnIndex == nDateIndex) {
                if (isHeaderVisible(cursor)) {
                    view.setVisibility(View.VISIBLE);
                     prevDate = dateString;
                    ((TextView) view).setText(dateString);
                } else {
                    ((TextView) view).setText("");
                    view.setVisibility(View.GONE);
                }
                return true;
            }
            return false;
        }
    });

这是 LogCat 显示当我向上滚动列表时它们如何比较:

09-06 11:06:43.460: INFO/System.out(563): Sun, 05 Sep 2010 11:41:53  (dateString)
09-06 11:06:43.460: INFO/System.out(563): Wed, 01 Sep 2010 21:58:06  (preDate)
09-06 11:06:43.460: INFO/System.out(563): 120.0                      (record)
09-06 11:06:43.820: INFO/System.out(563): Sun, 05 Sep 2010 17:47:26  (dateString)
09-06 11:06:43.820: INFO/System.out(563): Sun, 05 Sep 2010 11:41:53  (preDate)
09-06 11:06:43.820: INFO/System.out(563): 112.0                      (record)

正确的输出应该是:
2010 年 9 月 5 日星期日
112
120

但是当我向上滚动时,setViewValue首先调用120并与preDate(如上所示)进行比较,它变成:
2010 年 9 月 5 日星期日
112
2010 年 9 月 5 日,星期日
120

那么如何在创建标题后固定节标题呢?为什么滚动时会调用setViewBinder?对此有何建议?谢谢!

最佳答案

您还可以在这里看一下非常简单的项目:http://code.google.com/p/android-section-list/ 。灵感来自 iOS 的分区列表(iOS 中开箱即用)。

关于android - ListView 带有节标题问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3648840/

相关文章:

android - 继承和泛型 java android

java - 即使连接处于 Activity 状态,HTTP 请求也会失败

android - 单击按钮时如何在android中获取复选框,带有ListView值的EditText?

android - 防止可点击的 div 在 Android WebView 中突出显示

android - 如果向下滚动列表,则在使用 ViewHolder 时应用程序崩溃

ios - 如何使分组的 ListView 标题在 iOS 中正确 float (不粘)?

c# - 在 Windows Phone 8.1 上滚动时自动隐藏页眉和页脚

audio - 适用于A-law和mu-law的WAV文件头

java - 从实现 testcookie-nginx-module 的网站生成 cookie

java - EditText to double Android studio,这似乎有效但看起来不正确