Android: ListFragment: Comment faire pour actualiser la liste

J'ai un affichage de la liste qui est affichée sur un fragment. J'ai un bouton au bas de l'écran lorsqu'il est pressé, fera appel à un webservice pour reteive de données supplémentaires. Si il y a des données supplémentaires, j'ai besoin de l'ajouter à la liste d'affichage. J'ai cherché sur ce forum et de nombreux autres sites web d'essayer et de trouver comment le faire, mais je n'ai eu aucun succès. Toute aide est très appréciée.

Je suis en train de penser j'ai besoin d'ajouter le fragment dyncamically au lieu de l'avoir définie sur le code XML suivant de mise en page.

Je suis à l'aide d'un ListFragment pour gonfler une vue de liste sur l'écran.

J'ai un écran avec deux fragments. Le XML pour l'écran ci-dessous: -

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:orientation="horizontal" >

        <fragment
            android:name="atos.mobilereporting.com.ReportList"
            android:layout_width="323dp"
            android:layout_height="match_parent" />

        <fragment
            android:name="atos.mobilereporting.com.ReportDetail"
            android:layout_width="958dp"
            android:layout_height="match_parent" />
    </LinearLayout>


    <Button
        android:id="@+id/getReports"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Refresh Mobile Reports" />

</LinearLayout>

Le code pour gonfler la vue est ci-dessous: -

 public class ReportList extends ListFragment {

      public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);

            //Get list of reports...
            repList = ReportDefinitionFactory.buildReportList(3);

            activity = getActivity();

            ListAdapter la = new ArrayAdapter<String>(getActivity(),
                    android.R.layout.simple_list_item_1,
                    ReportDefinitionFactory.getReportDescriptions(repList));

            setListAdapter(la);

        }

    }

Ce code montre un simple affichage de la liste avec les 3 lignes sur elle.

C'est à ce point, je dois arrêter car je ne sais pas aller à partir d'ici. J'ai le code qui va ajouter une ligne supplémentaire dans le tableau est utilisé pour la création initiale de l'affichage de la liste, mais je ne sais pas comment je peux invoquer une actualisation de la liste.

Grâce

Martin

OriginalL'auteur Martin Shinks | 2012-11-19