android - 如何动态隐藏 ListView 分隔符?

标签 android listview hide divider

我有这个 ListView,我想根据 RadioGroup 的选择隐藏它的项目。目前我将一个 bool 值传递给 ListAdapter,因为 RadioGroup 只有两个选项。我的项目包含一个复选框,我想显示整个列表或仅显示选中复选框的项目。我成功地隐藏了项目,但分隔线仍然显示,我该如何解决这个问题?

看看它长什么样

http://www.mediafire.com/i/?wa2s0ngq027vjwr

http://www.mediafire.com/i/?9i6ggj2fdsns2da

(我是新手,所以我不能在这里上传图片)

我的行的 xml 是:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:padding="1dip" android:gravity="center_vertical"
android:background="#FFF">
<CheckBox android:id="@+id/dispositivo_tv"
    android:layout_width="wrap_content" android:layout_height="wrap_content"
    android:textColor="#000000" android:textSize="15dip"
    android:layout_alignParentLeft="true" />
<LinearLayout android:id="@+id/botones"
    android:layout_height="wrap_content" android:layout_width="wrap_content"
    android:layout_alignParentRight="true" android:gravity="center_vertical">

    <ImageButton android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:id="@+id/button_foto"
        android:src="@drawable/camera" android:background="#FFF"
        android:paddingRight="15dip" android:visibility="invisible"></ImageButton>
    <ImageButton android:layout_width="wrap_content"
        android:layout_height="wrap_content" android:id="@+id/button_comentario"
        android:src="@drawable/comment_add" android:background="#FFF"
        android:paddingRight="15dip"></ImageButton>

</LinearLayout>
</RelativeLayout>

ListView 的 xml block 将是:

<LinearLayout android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="horizontal"
android:padding="5dip" android:background="@layout/list_box">
<ListView android:id="@android:id/list" android:layout_width="fill_parent"
    android:layout_height="wrap_content" android:cacheColorHint="#00000000"
    android:headerDividersEnabled="false" android:footerDividersEnabled="false
    </ListView>
</LinearLayout>

当我告诉您的 bool 值设置为 FALSE 时,我用来隐藏该行的是:

wrapper.getDispositivo().setVisibility(View.GONE);
wrapper.getFoto().setVisibility(View.GONE);
wrapper.getComentario().setVisibility(View.GONE);

PS:wrapper 是类的实例,其中我拥有行的所有元素,即复选框 (getDispositivo()) 和几个图像按钮(getFoto()、getComentario())

提前致谢...

最佳答案

如何在相对布局和 setDivider(null) 中使用自定义分隔符?所以一旦你隐藏了布局,分隔线也被隐藏了。我实际上想将其添加为评论。但它仅在 50 次重复后出现,因此不得不将其作为答案。

关于android - 如何动态隐藏 ListView 分隔符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7445788/

相关文章:

javascript - 如何使用 android webview 在 appcelerator 的 titanium 移动应用程序上进行地理定位

c# - ListView 函数中的行错误帮助

linux - 如何隐藏/更改名称在 ps 的 Bash 脚本中调用的进程

javascript - jQuery hide - 如何知道元素是否已开始隐藏但仍然可见?

android - 无法在自定义适配器中使用 LayoutInflater

html - 当不透明度为零时,如何隐藏 HTML 文本输入中的插入符号? (IE)

Android APK 与测试 APK?

android - 从 Java 应用程序类将 App 上下文传递给 Koin

android - 使用通用 FindViewById 是一种不好的做法吗?

java - Expandable list-view-Android Studio 中的可点击(将您引导至网站)文本