ListView第一项有错误的值

时间:2014-07-16 12:12:27

标签: java android listview adapter android-cursoradapter

我有一个由ListView填充的CursorAdapter。这个ListView的每个项目都有5个孩子View。我在View的{​​{1}} {我使用CursorAdapter模式)中设置了这些子onBind()的值。值包括:电话号码,呼叫状态,评论计数,呼叫持续时间,呼叫发生的时间。如果错过或删除了来电,我将持续时间ViewHolder设置为View。一切都很好,而所有的电话都被“回答”,但是,如果出现错过或丢失的电话,那么INVISIBLE中的第一项,我重复总是只有第一个项目,持续时间{{ 1}}设置为ListView并使用错误值计算View。我不明白。所有其他第一项INVISIBLE都设置正确,但持续时间由于某种原因是错误的。请帮我解决这个问题。

这是我的View代码:

View

1 个答案:

答案 0 :(得分:1)

    if (stateCode != 0) {
       long duration = c.getLong(c.getColumnIndexOrThrow(KEY_DURATION));
       holder.durationView.setText(parseDuration(duration));
       holder.durationView.setVisibility(View.VISIBLE)
    } else{
       holder.durationView.setVisibility(View.INVISIBLE);
    }

尝试在if子句中将可见性设置为VISIBLE。我最近遇到了这个问题。