j'ai une listview dynamique (jai utilisé XML parser pour parser les données à partir de web service )
et maintenant je veux ajouter 4 item à cette liste view dynamique

ArrayList<String> maListe_principale = new ArrayList<String>();

maListe_principale.add(" Accueil" );
maListe_principale.add(" item1" );
maListe_principale.add(" item2" );
maListe_principale.add(" item3" );
maListe_principale.add(" item4" );


voila mon code :

la premiere classe contient les getters et setters
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package com.example.fadda;
 
 
public class ItemStructure {
 
 
		private String name ;
		private String description ;
		private String thumbnail ;
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public String getDescription() {
			return description;
		}
		public void setDescription(String description) {
			this.description = description;
		}
		public String getThumbnail() {
			return thumbnail;
		}
		public void setThumbnail(String thumbnail) {
			this.thumbnail = thumbnail;
		}
 
 
	}
cette classe contient adapter :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package com.example.fadda;
 
import java.net.URI;
import java.util.ArrayList;
import java.util.List;
 
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
 
public class ListAdapter extends ArrayAdapter<ItemStructure> {
    //mapData is an hashmap of hotelId vs arraylist, 
    private ArrayList<ItemStructure> reservationdata;
    private Context ctx;
    URI url = null;
    private LayoutInflater mInflater;
 
    public ListAdapter(Context context, int textViewResourceId,
            ArrayList<ItemStructure> reservationdata) {
        super(context, textViewResourceId, reservationdata);
        this.reservationdata = reservationdata;
        this.ctx = context;
        this.mInflater = LayoutInflater.from(context);
    }
 
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        View v = convertView;
        if (v == null) {
 
            v = mInflater.inflate(R.layout.item_activity, null);
 
        }
        final ItemStructure o = reservationdata.get(position);
        if (o != null) {
            TextView Title = (TextView) v.findViewById(R.id.TextView01);
 
 
 
 
 
            Title.setText(o.getName());
 
        }
        return v;
    }
 
}
cette classe contient l'activity principale :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
package com.example.fadda;
 
import java.io.IOException;
import java.util.ArrayList;
 
import org.apache.http.client.ClientProtocolException;
 
import android.app.Activity;
import android.app.ProgressDialog;
import android.content.Context;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.widget.ListView;
import android.widget.Toast;
 
public class MainActivity extends Activity {
	private Object TestAsyncTask;
	private ListAdapter htlAdapt = null;
	private ListView htlListView = null;
	private String name;
 
	private ItemStructure reservationdata = new ItemStructure();
	static ArrayList<ItemStructure> Content = new ArrayList<ItemStructure>();
 
	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		// setContentView(R.layout.main);
		setContentView(R.layout.activity_main);
		// TextView hotelname=(TextView)findViewById(R.id.slist);
		htlListView = (ListView) findViewById(R.id.list);
		htlAdapt = new ListAdapter(this, R.layout.item_activity, Content);
		htlListView.setAdapter(htlAdapt);
		getURL("http://www.example.net/blabla.xml");
 
	}
 
	@Override
	protected void onResume() {
		// TODO Auto-generated method stub
		super.onResume();
 
 
	}
 
	public void getURL(String url) {
		TestAsyncTask test = new TestAsyncTask();
 
		test.setContext(this);
 
		test.execute(url);
	}
 
	class TestAsyncTask extends
			AsyncTask<String, Void, ArrayList<ItemStructure>> {
 
		// private String Content;
 
		ArrayList<ItemStructure> Contents = null;
		private String Error = null;
		private ProgressDialog Dialog;
		private Context ctx;
 
		public void setContext(Context ctx) {
			this.ctx = ctx;
		}
 
		protected void onPreExecute() {
			Dialog = new ProgressDialog(ctx);
			Dialog.setMessage("Loading Data...");
 
			Dialog.show();
		}
 
		protected ArrayList<ItemStructure> doInBackground(String... urls) {
 
			try {
 
				Log.i("INFOOOOOO", "++++++++1");
				Contents = URLHelper.executeRequest();
 
				Log.i("INFOOOOOO", "++++++++" + Contents.size());
			} catch (ClientProtocolException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			} catch (IOException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
 
			return Contents;
		}
 
		protected void onPostExecute(ArrayList<ItemStructure> content) {
 
 
			if (Error != null) {
				Toast.makeText(ctx, "Pls Try Again  " + Error,
						Toast.LENGTH_LONG).show();
			} else {
				updateView(content);
 
			}
			Dialog.dismiss();
		}
	}
 
	private void updateView(ArrayList<ItemStructure> content) {
 
		this.Content.clear();
 
		this.Content.addAll(content);
 
		this.htlAdapt.notifyDataSetChanged();
	}
	public String getName1() {
		return name;
	}
 
	public void setTitle1(String name) {
		this.name = name;
	}
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package com.example.fadda;
 
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
 
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
 
import android.util.Log;
 
public class URLHelper {
    /** Called when the activity is first created. */
 
 
    @SuppressWarnings("unchecked")
    public static ArrayList<ItemStructure> executeRequest( ) throws ClientProtocolException, IOException
{
 
        //AndroidHttpClient client = AndroidHttpClient.newInstance("Android");
        HttpClient client = new DefaultHttpClient();
 
        String response= "";            
    ArrayList<ItemStructure> resarrHotelList= null;
    ArrayList <NameValuePair> params = new ArrayList<NameValuePair>();
    String url1 = "http://www.example.net/blabla.xml";                              
              HttpGet getUrl = new HttpGet(url1);
              HttpResponse httpResponse = client.execute(getUrl);              
          HttpEntity entity = httpResponse.getEntity();              
        if (entity != null) {                      
             InputStream instream = entity.getContent();                  
             XMLparsing fdParser = new XMLparsing(instream);
             resarrHotelList = (ArrayList<ItemStructure>) fdParser.xmlParse();  
             instream.close();
         }
 
    if(resarrHotelList!=null)
     Log.i("INFOOOO++++", "LIST"+resarrHotelList.size());
    //client.close();
    return resarrHotelList;
 
}  
}

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
package com.example.fadda;
 
import java.util.ArrayList;
import java.util.List;
 
import org.xml.sax.Attributes;
import org.xml.sax.SAXException;
import org.xml.sax.helpers.DefaultHandler;
 
import android.util.Log;
 
public class XMLhandler extends DefaultHandler {
    //private ChannelList channelList = new ChannelList();
     private StringBuilder builder;
     public static List<ItemStructure> channelList;
      private ItemStructure chList;
    //  private RoomRate currentMessage=new RoomRate();
 
    @Override
    public void characters(char[] ch, int start, int length)
        throws SAXException {
        // TODO Auto-generated method stub
        super.characters(ch, start, length);
         String string = new String(ch, start, length).replaceAll("[\r\t\n]", "");
         builder.append(string);
 
    }
 
    @Override
    public void endElement(String uri, String localName, String title)
            throws SAXException {
          // TODO Auto-generated method stub
            super.endElement(uri, localName, title);
            if (chList != null){
 
            if (localName.equalsIgnoreCase("name"))
            {
            chList.setName(builder.toString());
            Log.i("111CITYYYYYYY", "++++++++"+chList.getName());
            }
 
            else if (localName.equalsIgnoreCase("description")){
                chList.setDescription(builder.toString());
 
            }
             else if (localName.equalsIgnoreCase("thumbnail")){
                chList.setThumbnail(builder.toString());
 
             }
 
 
 
            else if (localName.equalsIgnoreCase("channel")){
                channelList.add(chList);
            }    
            builder.setLength(0);    
 
            }        
    }
    @Override
    public void startDocument() throws SAXException {
        // TODO Auto-generated method stub
        super.startDocument();
        channelList = new ArrayList<ItemStructure>();
         builder = new StringBuilder();
 
    }
    @Override
    public void startElement(String uri, String localName, String title,
            Attributes attributes) throws SAXException {
        // TODO Auto-generated method stub
        super.startElement(uri, localName, title, attributes);
         if (localName.equalsIgnoreCase("channel")){
                this.chList = new ItemStructure();
                builder.setLength(0);
            }
    }
    public List<ItemStructure> getChannelList() {
        return channelList;
    }
    public void setChannelList(List<ItemStructure> channelList) {
        this.channelList = channelList;
    }
 
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.example.fadda;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
 
import javax.xml.parsers.ParserConfigurationException;
import javax.xml.parsers.SAXParser;
import javax.xml.parsers.SAXParserFactory;
 
import org.xml.sax.SAXException;
 
 
 
public class XMLparsing {
    private InputStream xmlInputStream;
 
    public XMLparsing(InputStream xmlInputStream){
          this.xmlInputStream = xmlInputStream;
        }
 
     public List<ItemStructure> xmlParse() throws IOException 
        {
            SAXParserFactory factory = SAXParserFactory.newInstance();
            List<ItemStructure> channellist=null;
        try {      
            SAXParser parser = factory.newSAXParser();
            XMLhandler handler = new XMLhandler();         
            parser.parse(this.getInputStream(),handler);
            return handler.getChannelList();        
        } catch (ParserConfigurationException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SAXException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return channellist;  
    }
 
    private InputStream getInputStream() {
        // TODO Auto-generated method stub
        return xmlInputStream;
    }
}