Android 隐藏ListView的元素';s项目取决于光标';s列值

Android 隐藏ListView的元素';s项目取决于光标';s列值,android,android-listview,Android,Android Listview,我有一个CursorAdapter类的子类和一个ListView,其中每个项都有两个TextView。一个拿着文本,另一个拿着数字 文本来自一个光标列,数字来自另一个光标列。如果数字等于0,我想隐藏它 我的列表项视图为: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:

我有一个CursorAdapter类的子类和一个ListView,其中每个项都有两个TextView。一个拿着文本,另一个拿着数字

文本来自一个光标列,数字来自另一个光标列。如果数字等于0,我想隐藏它

我的列表项视图为:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:padding="10dp">

    <TextView
        android:background="@drawable/task_count_indicator"
        android:layout_width="wrap_content"
        android:layout_height="fill_parent"
        android:layout_alignParentRight="true"
        android:layout_gravity="center_vertical"
        android:textColor="@color/white"
        android:id="@+id/txtTaskCount" />

    <TextView
        android:layout_height="fill_parent"
        android:layout_width="fill_parent"
        android:ellipsize="marquee"
        android:textSize="18sp"
        android:layout_alignParentLeft="true"
        android:layout_gravity="center_vertical"
        android:id="@+id/placeItemName"/>

</RelativeLayout>
问题在于,有时每个包含数字的视图都会被绘制为隐藏视图,或者使用不正确的值(文本内容总是正确的)。我记录
taskCount
值-它总是正确的

我还注意到,如果我对if语句进行注释并始终将文本分配给
count
,如下所示:

    //if(taskCount > 0)
        count.setText(Integer.toString(taskCount));
    //else
        //count.setVisibility(View.GONE);

问题不在重现。

我认为您的问题与
taskCound>0
您应该需要指定
count.setVisibility(View.Visible)
,因为视图正在被重用。因此,请务必为每种情况定义您的值

希望有帮助

    //if(taskCount > 0)
        count.setText(Integer.toString(taskCount));
    //else
        //count.setVisibility(View.GONE);