J'ai ce ListView dont les articles que je voudrais cacher selon la sélection d'un groupe de radio. Actuellement je passe un booléen au ListAdapter dû au RadioGroup ayant seulement deux options. Mes articles contiennent une case à cocher et je veux montrer la liste entière ou seulement ceux avec les cases à cocher cochées. Je réussis à cacher les objets mais les diviseurs montrent encore, comment puis-je résoudre ce problème?Comment masquer dynamiquement les diviseurs listview?
Regardez comment il ressemble
http://www.mediafire.com/i/?wa2s0ngq027vjwr
http://www.mediafire.com/i/?9i6ggj2fdsns2da
(je suis nouveau, donc je ne peux pas télécharger les images ici)
xml pour ma ligne serait la suivante:
<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>
et le bloc xml pour le ListView serait:
<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>
et ce que j'utilise pour cacher la ligne lorsque la valeur booléenne je vous ai parlé est défini FAUX est:
wrapper.getDispositivo().setVisibility(View.GONE);
wrapper.getFoto().setVisibility(View.GONE);
wrapper.getComentario().setVisibility(View.GONE);
PS: wrapper est l'instance de la classe où je tous les éléments de la ligne, soit la case à cocher (getDispositivo()), et un couple de boutons d'image (getFoto(), getComentario())
Merci à l'avance ...
Nous ne pouvons pas lire vos pensées. Vous devriez écrire du code et plus de détails. –
myListIvew.setDividerHeight (0); – superM
Jetez un oeil à cette question http://stackoverflow.com/questions/2749551/how-to-change-the-divider-height-of-listview-dynamically – Martyn