Dynamiquement ajout et suppression de lignes de la table - Android

Je suis en train d'ajouter de manière dynamique et supprimer des lignes dans un TableLayout.

La mise en page est définie dans un fichier xml.

Je suis en mesure de réussir à supprimer une ligne, mais quand j'ai appeler le correspondant addView commande rien ne se passe.

table = (TableLayout)findViewById(R.id.table);
row = (TableRow)findViewById(R.id.row);

table.removeView(row);

table.addView(row);

Cette résultats dans une rangée d'être supprimé, mais pas de l'ajouter à nouveau.

Edit: il s'avère qu'Il a été l'ajout de si, après tout, juste au bas de l'écran plutôt que dans le même endroit, il a été retiré de.

Je suis en mesure de l'ajouter dans la position correcte en spécifiant l'index:

table.addView(row,4); //4 happens to the the row

mais je n'arrive pas à comprendre comment déterminer l'indice de la ligne , il ne semble pas être une méthode pour accomplir cette. quelqu'un sait comment faire pour que? (ie. si je ne savais pas que l'indice a été de 4 comment pourrais-je le savoir)

Edit: inclus XML. c'est juste la ligne en question, il y a d'autres lignes au-dessus et au-dessous

<TableRow android:id="@+id/row">

        <TextView android:id="@+id/field1"
            android:text="testing"
        android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:padding="3dip"
            android:textStyle="bold"
            android:textSize="18dip"
        />


        <TextView android:id="@+id/field2"
            android:padding="3dip"
            android:text="test"
            android:textSize="18dip"
            android:gravity="right"
        />



    </TableRow>
Votre code fonctionne très bien avec un test de mise en page. Que votre mise en page XML de faire d'autres commentaires.
Avez-vous des lignes au-dessus et au-dessous de la ligne en question?

OriginalL'auteur brodie31k | 2009-09-10