2010-11-27 4 views
19

Problème intéressant que j'ai avec un ListView. Il utilise un ArrayAdapter standard, avec une mise en page XML personnalisée pour les éléments qu'il contient. XML simple:Ligne noire sous certains éléments ListView

<?xml version="1.0" encoding="utf-8"?> 
<TextView 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@android:id/text1" 
    android:background="@drawable/list_bg_blue" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:paddingTop="20dp" 
    android:paddingBottom="20dp" 
    android:typeface="serif" 
    android:textSize="20px" 
    android:textStyle="bold|italic" 
    android:textColor="#FF1e5a82" 
    android:shadowColor="#FFFFFFFF" 
    android:shadowDx="1" 
    android:shadowDy="1" 
    android:shadowRadius="1" 
/> 

Je ne pense pas qu'il y ait quoi que ce soit là-dedans qui est un problème, mais je vais avoir quelques lignes noires étranges apparaître que je ne peux pas à se débarrasser de (vous pouvez le voir dans l'image ci-dessous). J'ai essayé de définir android:dividerHeight="0px" dans ListView, mais ceux-ci apparaissent toujours. Vous pouvez voir entre les nouveaux épisodes et les spectacles qu'il n'y a pas de ligne, mais pour une raison quelconque, il y a après le premier et le dernier.

Des idées?

EDIT: Est-ce un peu plus la pensée, semble être que le premier et le dernier, donc je l'ai trouvé:

android:headerDividersEnabled et android:footerDividersEnabled

Réglage des pieds de page à false fixe le dernier, mais en-tête mise curieusement les diviseurs à faux n'ont eu aucun effet. :/

Encore plus d'éditions !: Ok, donc j'ai ajouté quelques éléments de plus à la liste (aurait dû le faire en premier), et il semble être tous les autres éléments (par exemple, élément 1, élément 3, élément 5, et ainsi de suite) qui a un diviseur apparaissant ci-dessous.

Lines on ListView

Répondre

41

On pourrait dire

<ListView 
    ... 
    android:divider="@null" 
    ... 
/> 

Le diviseur doit être inséré après chaque entrée par défaut.

+0

Parfait! Je vous remercie! – kcoppock

2

Je déteste répondre à ma propre question, mais je trouve une solution:

ListView lv = getListView(); 
lv.setDivider(null); 

Ce résolu le problème. Cependant, j'aimerais toujours savoir comment faire avec XML, et comprendre pourquoi il ne les insère que sur tous les autres éléments.

0

Vous pouvez le définir en XML avec: android: divider = "@ null"

+0

Copie exacte de la réponse acceptée qui était 3 ans plus tôt que la vôtre. –

Questions connexes