Android 隐藏ListView的元素';s项目取决于光标';s列值
我有一个CursorAdapter类的子类和一个ListView,其中每个项都有两个TextView。一个拿着文本,另一个拿着数字 文本来自一个光标列,数字来自另一个光标列。如果数字等于0,我想隐藏它 我的列表项视图为: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:
<?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);