2012-02-10 8 views
0

Je fais une application Android qui doit utiliser un ListView. Je veux ajouter un menubutton qui dit "Ajouter à la liste" et une fois que l'utilisateur appuie sur ce menubutton, il apparaît une popup popup contenant un TextView, EditText et deux Buttons, "Ok" et "Annuler". Une fois que l'utilisateur appuie sur "Ok", le texte à l'intérieur du EditText doit être ajouté au ListView. Et l'annulation Button est évidente. Je veux également pouvoir appuyer longtemps sur un article ListView pour ouvrir une popup popup contenant une suppression Button. Je veux concevoir l'écran ListView en utilisant XML. Comment puis-je rendre cela possible ??? S'il vous plaît aidez-moi et merci beaucoup d'avance! J'utilise ce code jusqu'à présent:Utiliser listview dans android

activité ListView:

public class NotesActivity extends ListActivity { 
/** Called when the activity is first created. */ 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 
} 

XML écran principal:

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="fill_parent" 
android:layout_height="fill_parent" 
android:background="@drawable/background" 
android:orientation="vertical" > 








<ListView 
    android:id="@+id/list" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

</ListView> 

</LinearLayout> 
+0

lorsque vous utilisez un ListActivity vous n'avez pas besoin que XML avec Listview 'View' en elle. – Sunny

Répondre

8
  1. Vous devez créer une mise en page contenant un listView.

  2. Vous devez créer un fichier XML correspondant à une ligne de votre liste.

  3. Vous devez créer un adaptateur qui peupleront les données à insérer dans votre listView

  4. Vous devez créer un onClickListener sur votre bouton pour ajouter des données dans votre liste

  5. Si vous utilisez un ArrayAdapter ou un CursorAdapter, ajouter le nouveau élément créé à la liste ou le curseur utilisé par votre adaptateur et (notifyDataSetChanged() est appelé automatiquement), de sorte que votre adaptateur mettra à jour le listview

Source: http://developer.android.com/resources/tutorials/views/hello-listview.html

Sujet précédent sur elle: Dynamic ListView in Android app

3

plus de détails: - http://www.listviewinandroid.blogspot.in/

public class SimpleListViewActivity extends Activity { 

    private ListView mainListView ; 


    private ArrayAdapter<String> listAdapter ; 

    public void onCreate(Bundle savedInstanceState) { 

super.onCreate(savedInstanceState); 

setContentView(R.layout.main); 

// Find the ListView resource. 
mainListView = (ListView) findViewById(R.id.mainListView); 

// 


// Create and populate a List of planet names. 
String[] planets = new String[] { "Mercury", "Venus", "Earth", "Mars", 
            "Jupiter", "Saturn", "Uranus", "Neptune"}; 




ArrayList<String> planetList = new ArrayList<String>(); 
planetList.addAll(Arrays.asList(planets)); 




// Create ArrayAdapter using the planet list. 
listAdapter = new ArrayAdapter<String>(this, R.layout.simplerow, planetList); 




// Add more planets. If you passed a String[] instead of a List<String> 
// into the ArrayAdapter constructor, you must not add more items. 
// Otherwise an exception will occur. 
listAdapter.add("Ceres"); 
listAdapter.add("Pluto"); 
listAdapter.add("Haumea"); 
listAdapter.add("Makemake"); 
listAdapter.add("Eris"); 

    // Set the ArrayAdapter as the ListView's adapter. 
mainListView.setAdapter(listAdapter); 


mainListView.setOnItemClickListener(new OnItemClickListener() { 

    public void onItemClick(AdapterView<?> arg0, View arg1, int pos, 
      long arg3) { 

     //Log.i("m", "-"+pos); 


    Intent myIntent = new Intent(SimpleListViewActivity.this, MainActivity.class); 
    myIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    myIntent.putExtra("pos", pos); 
    startActivity(myIntent); 

    } 

}); 


    } 
} 

MainActivity.java

package com.windrealm.android; 
    import android.app.Activity; 
    import android.os.Bundle; 
    import android.util.Log; 
    import android.widget.TextView; 



public class MainActivity extends Activity { 
//TextView tv; 

/** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.mainactivity); 
TextView tv = (TextView) findViewById(R.id.textView1); 
    Bundle b = getIntent().getExtras(); 
    int pos = b.getInt("pos"); 
    Log.i("pos=", "-"+pos); 
    if(pos==0) 

{ 

     tv.setText("MERCURY \n Aphelion \n69,816,900 km\n0.466 697 AU\nPerihelion\n 46,001,200 km\n"); 




} 
if(pos==2) 
{ 
    tv.setText("earth"); 
} 

    } 

    } 
0
//Adapter  
    package com.example.androidlistview; 

     import java.util.ArrayList; 

     import android.app.Activity; 
     import android.content.Context; 
     import android.os.AsyncTask; 
     import android.util.Log; 
     import android.view.LayoutInflater; 
     import android.view.View; 
     import android.view.ViewGroup; 
     import android.widget.BaseAdapter; 
     import android.widget.ImageView; 
     import android.widget.ProgressBar; 
     import android.widget.TextView; 

     import com.squareup.picasso.Picasso; 

     public class CustomAdapter extends BaseAdapter{ 
      ProgressBar pro; 
      private Activity activity; 
      private ArrayList<ListGetterSetter> Arr_List; 

      private LayoutInflater inflate; 

      public CustomAdapter(Activity a,ArrayList<ListGetterSetter> arr) 
      { 
       activity = a; 
       Arr_List = arr; 
       inflate = (LayoutInflater)a.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
      } 

      @Override 
      public int getCount() { 
       // TODO Auto-generated method stub 

       return Arr_List.size(); 
      } 

      @Override 
      public Object getItem(int position) { 
       // TODO Auto-generated method stub 
       return Arr_List.get(position); 
      } 

      @Override 
      public long getItemId(int position) { 
       // TODO Auto-generated method stub 
       return 0; 
      } 

      @Override 
      public View getView(int position, View convertView, ViewGroup parent) { 
       // TODO Auto-generated method stub 
       ViewHolder holder = null; 
       String url = null; 
       Log.i("getView","called"); 

       if(convertView==null){ 
        holder = new ViewHolder(); 

        url ="ImagePath"; 

        convertView = inflate.inflate(R.layout.tbrow, null); 
        holder.txtname = (TextView)convertView.findViewById(R.id.txt_name); 
        holder.txtdist = (TextView)convertView.findViewById(R.id.txt_dist); 
        holder.txtaddress = (TextView)convertView.findViewById(R.id.iRestaddress); 
        holder.image = (ImageView)convertView.findViewById(R.id.img_listimage); 
        holder.txtname.setText(Arr_List.get(position).getName()); 
        holder.txtdist.setText(Arr_List.get(position).getD_dist()); 
        holder.txtaddress.setText(Arr_List.get(position).getvAddress2()); 
        Log.i("URLLRLRLRRL",""+url); 
        Picasso.with(activity).load(url).placeholder(R.drawable.listimg).noFade().into(holder.image); 
        convertView.setTag(holder); 

       } 
       else 
       { 
        holder = (ViewHolder) convertView.getTag(); 
       } 


       return convertView; 
      } 
      public static class ViewHolder { 
       public TextView txtname,txtaddress,txtdist; 
       public ImageView image; 

      } 


     } 

    //Call Main Activity 
    package com.example.androidlistview; 

    import java.io.BufferedReader; 
    import java.io.IOException; 
    import java.io.InputStreamReader; 
    import java.net.HttpURLConnection; 
    import java.net.MalformedURLException; 
    import java.net.URL; 
    import java.util.ArrayList; 

    import org.json.JSONArray; 
    import org.json.JSONException; 
    import org.json.JSONObject; 

    import android.app.Activity; 
    import android.app.ProgressDialog; 
    import android.os.AsyncTask; 
    import android.os.Bundle; 
    import android.os.Parcelable; 
    import android.util.Log; 
    import android.view.View; 
    import android.widget.AbsListView; 
    import android.widget.AbsListView.OnScrollListener; 
    import android.widget.LinearLayout; 
    import android.widget.ListView; 

    public class MainActivity extends Activity implements OnScrollListener{ 
    int currentFirstVisibleItem,currentVisibleItemCount,currentScrollState,total; 
    int selection=0; 
     ProgressDialog pd_load; 
     ListView lst_list; 
     String MSG; 
     LinearLayout ll; 
     ArrayList<ListGetterSetter> ListArray; 
     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_main); 
      ListArray = new ArrayList<ListGetterSetter>(); 
      new GetList().execute(); 
      lst_list = (ListView)findViewById(R.id.lst_list); 
      lst_list.setOnScrollListener(this); 
     } 

     public class GetList extends AsyncTask<Void, Void, Void> 
     { 

      @Override 
      protected void onPreExecute() { 
       // TODO Auto-generated method stub 
       super.onPreExecute(); 
    //   pd_load = new ProgressDialog(MainActivity.this); 
    //   pd_load.setMessage("Loading..."); 
    //   pd_load.show(); 

       ll = (LinearLayout)findViewById(R.id.ll_load); 
       ll.setVisibility(View.VISIBLE); 

      } 

      @Override 
      protected Void doInBackground(Void... params) { 
       // TODO Auto-generated method stub 
       getdata(); 
       return null; 
      } 

      @Override 
      protected void onPostExecute(Void result) { 
       // TODO Auto-generated method stub 
    //   if(pd_load.isShowing()) 
    //   { 
    //    pd_load.dismiss(); 
    //   } 

       ll.setVisibility(View.GONE); 

       CustomAdapter cst = new CustomAdapter(MainActivity.this, ListArray); 
       lst_list.setAdapter(cst); 
       lst_list.setSelection(selection); 
       super.onPostExecute(result); 
      } 


      public void getdata() 
      { 
       try 
       { 
        URL url = new URL("url"); 
        HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
          connection.connect(); 
          int code = connection.getResponseCode(); 
          if (code != 200) { 
          MSG = "Internet connection not available"; 
          //setContentView(R.layout.webimg); 
          } else { 
          BufferedReader dis = new BufferedReader(
          new InputStreamReader(connection.getInputStream())); 

          String myString, Result = dis.readLine(); 

          while ((myString = dis.readLine()) != null) { 
          Result += myString; 
          } 


          JSONObject jsonObject = new JSONObject(Result); 

          JSONArray jsarr = jsonObject.getJSONArray("posts"); 

          int arraysize = jsarr.length(); 



          for(int i=0;i<arraysize;i++) 
          { 
           ListGetterSetter ls = new ListGetterSetter(); 
           JSONObject jsobj = jsarr.getJSONObject(i); 
           ls.setName(jsobj.getJSONObject("post").getString("vName")); 
           ls.setvAddress1(jsobj.getJSONObject("post").getString("vAddress1")); 
           ls.setD_dist(jsobj.getJSONObject("post").getString("d_dist")); 
           ls.setvAddress2(jsobj.getJSONObject("post").getString("vAddress2")); 
           ls.setImagepath(jsobj.getJSONObject("post").getString("vImage")); 

           ListArray.add(ls); 
          } 

          } 

          } catch (MalformedURLException e1) { 
          // TODO Auto-generated catch block 
          MSG = "MalformedURLException"; 
          } catch (IOException e) { 
          // TODO Auto-generated catch block 
          MSG = "IOException"; 
          } catch (JSONException e) { 
           // TODO Auto-generated catch block 
           e.printStackTrace(); 
          } 





      } 

     } 

     @Override 
     public void onScroll(AbsListView view, int firstVisibleItem, 
       int visibleItemCount, int totalItemCount) { 
      Log.i("Scroll End","Call1222"); 
      this.currentFirstVisibleItem = firstVisibleItem; 
      this.currentVisibleItemCount = visibleItemCount; 
      this.total = totalItemCount; 
      // TODO Auto-generated method stub 
      Log.i("Scroll End","Call1"+currentVisibleItemCount); 

     } 

     @Override 
     public void onScrollStateChanged(AbsListView view, int scrollState) { 
      // TODO Auto-generated method stub 
      this.currentScrollState = scrollState; 
      Log.i("Scroll End","Call2"); 
       this.isScrollCompleted(); 
     } 

     public void isScrollCompleted() 
     { 

      final int lastItem = currentFirstVisibleItem + currentVisibleItemCount; 
      if(lastItem == total) { 
       // Last item is fully visible. 
       selection=total; 


       new GetList().execute(); 


      } 
      if (this.currentVisibleItemCount ==ListArray.size() && this.currentScrollState == SCROLL_STATE_IDLE) { 
       /*** In this way I detect if there's been a scroll which has completed ***/ 
       /*** do the work for load more date! ***/ 
       Log.i("Scroll End","Call"); 


      } 
     } 
    } 



//List Row 
<?xml version="1.0" encoding="utf-8"?> 
<TableRow xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/tr_main" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" > 

    <RelativeLayout 
     android:layout_width="wrap_content" 
     android:layout_height="115dp" 
     android:layout_weight="1" 
     android:background="@drawable/listingbg" 
     android:orientation="horizontal" 
     android:paddingBottom="5dp" 
     android:paddingLeft="5dp" 
     android:paddingRight="5dp" 
     android:paddingTop="5dp" > 

     <FrameLayout 
      android:id="@+id/img_image" 
      android:layout_width="80dp" 
      android:layout_height="80dp" 
      android:layout_alignParentLeft="true" 
      android:layout_alignParentTop="true" 
      android:layout_marginLeft="5dp" 
      android:layout_marginTop="5dp" 
      > 

      <ImageView android:layout_width="fill_parent" 
       android:layout_height="fill_parent" 
       android:id="@+id/img_listimage" 
       android:src="@drawable/listimg"/> 

      <ProgressBar 
       android:id="@+id/progressBar1" 
       style="?android:attr/progressBarStyleLarge" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:visibility="gone"/> 

      </FrameLayout> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_alignParentLeft="true" 
      android:layout_below="@+id/img_image" 
      android:layout_marginLeft="8dp" 
      android:layout_toLeftOf="@+id/relativeLayout1" 
      android:gravity="center_vertical|center_horizontal" 
      android:minWidth="100dp" > 

      <TextView 
       android:id="@+id/txt_dist" 
       android:layout_width="wrap_content" 
       android:layout_height="fill_parent" 
       android:text="5 km" 
       android:textColor="#000000" 
       android:textSize="14sp" 
       android:textStyle="bold" /> 
     </LinearLayout> 

     <RelativeLayout 
      android:id="@+id/relativeLayout1" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginRight="30dp" 
      android:layout_toRightOf="@+id/img_image" 
      android:paddingLeft="5dp" > 

      <TextView 
       android:id="@+id/txt_name" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginLeft="5dp" 
       android:layout_marginTop="5dp" 
       android:layout_toLeftOf="@+id/iv_fav_tbrow" 
       android:ellipsize="end" 
       android:gravity="left" 
       android:singleLine="true" 
       android:text="Restaurant namefbfbfbfbfdbfbfb" 
       android:textColor="#2e1317" 
       android:textSize="19dp" 
       android:textStyle="bold" /> 

      <TextView 
       android:id="@+id/iRestaddress" 
       android:layout_width="fill_parent" 
       android:layout_height="wrap_content" 
       android:layout_below="@+id/txt_name" 
       android:layout_marginLeft="5dp" 
       android:ellipsize="end" 
       android:lines="2" 
       android:maxEms="5" 
       android:maxWidth="170dp" 
       android:text="202, asharam road. Ahmedabad - 3000001" 
       android:textColor="#2e1317" 
       android:textSize="14dp" /> 

      <LinearLayout 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_below="@+id/iRestaddress" 
       android:layout_marginLeft="7dp" 
       android:layout_marginTop="5dp" 
       android:paddingBottom="1dp" > 

       <ImageView 
        android:id="@+id/iv_rating1" 
        android:layout_width="25dp" 
        android:layout_height="25dp" 
        android:src="@drawable/rat_star_off" /> 

       <LinearLayout 
        android:layout_width="6dp" 
        android:layout_height="wrap_content" > 
       </LinearLayout> 

       <ImageView 
        android:id="@+id/iv_rating2" 
        android:layout_width="25dp" 
        android:layout_height="25dp" 
        android:src="@drawable/rat_star_off" /> 

       <LinearLayout 
        android:layout_width="6dp" 
        android:layout_height="wrap_content" > 
       </LinearLayout> 

       <ImageView 
        android:id="@+id/iv_rating3" 
        android:layout_width="25dp" 
        android:layout_height="25dp" 
        android:src="@drawable/rat_star_off" /> 

       <LinearLayout 
        android:layout_width="6dp" 
        android:layout_height="wrap_content" > 
       </LinearLayout> 

       <ImageView 
        android:id="@+id/iv_rating4" 
        android:layout_width="25dp" 
        android:layout_height="25dp" 
        android:src="@drawable/rat_star_off" /> 

       <LinearLayout 
        android:layout_width="6dp" 
        android:layout_height="wrap_content" > 
       </LinearLayout> 

       <ImageView 
        android:id="@+id/iv_rating5" 
        android:layout_width="25dp" 
        android:layout_height="25dp" 
        android:src="@drawable/rat_star_off" /> 

       <LinearLayout 
        android:layout_width="6dp" 
        android:layout_height="wrap_content" > 
       </LinearLayout> 
      </LinearLayout> 

      <ImageView 
       android:id="@+id/iv_fav_tbrow" 
       android:layout_width="25dp" 
       android:layout_height="25dp" 
       android:layout_above="@+id/iRestaddress" 
       android:layout_alignParentRight="true" 
       android:layout_marginRight="5dp" 
       android:background="@drawable/ic_favorite" 
       android:visibility="gone" /> 
     </RelativeLayout> 
    </RelativeLayout> 

</TableRow> 



//main.xml 

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

    <LinearLayout 
     android:layout_width="fill_parent" 
     android:layout_height="328dp" 
     android:layout_weight="0.79" 
     android:orientation="vertical" > 

     <ListView 
      android:id="@+id/lst_list" 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" > 
     </ListView> 
    </LinearLayout> 

    <LinearLayout 
     android:id="@+id/ll_load" 
     android:layout_width="fill_parent" 
     android:layout_height="50dp" 
     android:layout_alignParentBottom="true" 
     android:gravity="center" 
     android:orientation="horizontal" 
     android:visibility="gone" 
     android:background="@drawable/listingbg" 
     > 
     <ProgressBar 
      android:id="@+id/progressBar1" 
      style="?android:attr/progressBarStyleLarge" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" /> 

     <TextView 
      android:id="@+id/textView1" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Loading..." 
      android:textSize="16dp" 
      android:textColor="@android:color/white" 
      android:textStyle="bold"/> 
    </LinearLayout> 

</LinearLayout> 
0

Voir la liste des échantillons:

import java.io.FileOutputStream; 
import java.io.IOException; 
import java.util.ArrayList; 
import java.util.HashMap; 
import java.util.List; 

import org.apache.http.HttpResponse; 
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 org.apache.http.util.EntityUtils; 

import com.example.beans.SongInfo; 



import android.app.Activity; 
import android.app.AlertDialog; 
import android.content.Context; 
import android.os.AsyncTask; 
import android.os.Bundle; 
import android.view.Menu; 
import android.view.View; 
import android.widget.AdapterView; 
import android.widget.ListView; 
import android.widget.TextView; 
import android.widget.AdapterView.OnItemClickListener; 

public class BuddiesActivity extends Activity { 

    int statusClass = 2; 
    String taskResult="test"; 
    ListView list; 
    LazyAdapter adapter; 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     new HttpAsyncTask().execute("http://en.wikipedia.org/w/api.php?format=json&action=query&titles=Main%20Page&prop=revisions&rvprop=content"); 

     do { 
      try { 
       Thread.sleep(2000); 
      } catch (InterruptedException e) { 
       e.printStackTrace(); 
      } 
     } while (statusClass == 2);     


     setContentView(R.layout.activity_buddies); 
//  TextView textview=(TextView)findViewById(R.id.buddies); 
//  textview.setText(taskResult); 

ArrayList<SongInfo> songsList1 = new ArrayList<SongInfo>(); 

     System.out.println("Emply ArrayList Created"); 

     songsList1=getListData(); 

     System.out.println("Data added to arrayList :"+songsList1.size()+" Data is: "+songsList1); 

     list=(ListView)findViewById(R.id.list); 

     System.out.println("ListView Got"); 
     // Getting adapter by passing xml data ArrayList 
     adapter=new LazyAdapter(this, songsList1); 

     System.out.println("Object Of Lazy Adapter created"); 
     list.setAdapter(adapter); 

     System.out.println("adapter set.."); 


     // Click event for single list row 
     /*list.setOnItemClickListener(new OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> parent, View view, 
        int position, long id) { 
       initiatePopupWindow(); 

      } 
     });*/ 




    } 

    public ArrayList<SongInfo> getListData(){ 
     ArrayList<SongInfo> list=new ArrayList<SongInfo>(); 




     list.add(new SongInfo("Song", "1", "Someone Like You", "Adele", "4:47", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "2", "Space Bound", "Eminem", "4:34", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "3", "Stranger In Moscow", "Michael Jackson", "5:55", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "4", "Love The Way You Lie", "Rihanna", "4:23", "http://api.androidhive.info/music/images/adele.png")); 

     list.add(new SongInfo("Song", "5", "Someone Like You", "Adele", "4:47", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "6", "Space Bound", "Eminem", "4:34", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "7", "Stranger In Moscow", "Michael Jackson", "5:55", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "8", "Love The Way You Lie", "Rihanna", "4:23", "http://api.androidhive.info/music/images/adele.png")); 

     list.add(new SongInfo("Song", "9", "Someone Like You", "Adele", "4:47", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "10", "Space Bound", "Eminem", "4:34", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "11", "Stranger In Moscow", "Michael Jackson", "5:55", "http://api.androidhive.info/music/images/adele.png")); 
     list.add(new SongInfo("Song", "12", "Love The Way You Lie", "Rihanna", "4:23", "http://api.androidhive.info/music/images/adele.png")); 


     return list; 


    } 

    @Override 
    public boolean onCreateOptionsMenu(Menu menu) { 
     // Inflate the menu; this adds items to the action bar if it is present. 
     getMenuInflater().inflate(R.menu.buddies, menu); 
     return true; 
    } 


    private class HttpAsyncTask extends AsyncTask<String, Void, String> { 
     AlertDialog.Builder builder; 

    protected void onPreExecute() { 
     super.onPreExecute(); 
     builder = new AlertDialog.Builder(BuddiesActivity.this); 
    } 

    @Override 
    protected String doInBackground(String... urls) { 
      return POST(urls[0]); 
    } 

    @Override 
    protected void onPostExecute(String result) { 
    } 
} 





    public String POST(String url) { 
     System.out.println("I am in post data./.............................."); 
     HttpClient httpclient = new DefaultHttpClient(); 
     HttpGet httppost = new HttpGet(url); 
     String result = null; 
     try { 
      HttpResponse response = httpclient.execute(httppost); 
      int status = response.getStatusLine().getStatusCode(); 
      System.out.println("Status is : " + status); 
//   ParseProductJson parseJson = new ParseProductJson(); 
      if (status == 200) { 
       result = EntityUtils.toString(response.getEntity()); 
       System.out.println("################result1###############################"+ result); 
       /*FileOutputStream fos = openFileOutput("productsJson.json", 
         Context.MODE_PRIVATE); 
       fos.write(result.getBytes()); 
       fos.close();*/ 

       System.out.println("Done"); 
       taskResult=result; 

       statusClass = status; 
      } else { 
       statusClass = 400; 
       result = "Did not work!"; 
      } 
     } catch (ClientProtocolException e) { 
      e.printStackTrace(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 
     return result; 
    } 






} 
0

Adaptateur:

import java.util.ArrayList; 

import android.app.Activity; 
import android.content.Context; 
import android.view.LayoutInflater; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.BaseAdapter; 
import android.widget.ImageView; 
import android.widget.TextView; 

import com.example.beans.SongInfo; 

public class LazyAdapter extends BaseAdapter { 

    private Activity activity; 
    private ArrayList<SongInfo> data1; 
    private static LayoutInflater inflater=null; 
    //public ImageLoader imageLoader; 

    public LazyAdapter(Activity a, ArrayList<SongInfo> d) { 
     activity = a; 
     data1=d; 
     inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
     // imageLoader=new ImageLoader(activity.getApplicationContext()); 
    } 

    public int getCount() { 
     return data1.size(); 
    } 

    public Object getItem(int position) { 
     return position; 
    } 

    public long getItemId(int position) { 
     return position; 
    } 

    public View getView(int position, View convertView, ViewGroup parent) { 
     View vi=convertView; 
     if(convertView==null) 
      vi = inflater.inflate(R.layout.list_row, null); 

     TextView title = (TextView)vi.findViewById(R.id.title); // title 
     TextView artist = (TextView)vi.findViewById(R.id.artist); // artist name 
     TextView duration = (TextView)vi.findViewById(R.id.duration); // duration 
     ImageView thumb_image=(ImageView)vi.findViewById(R.id.list_image); // thumb image 

     SongInfo song=data1.get(position); 

     // Setting all values in listview 
     title.setText(song.getTitle()); 
     artist.setText(song.getArtist()); 
     duration.setText(song.getDuration()); 
     if(song.getArtist().equalsIgnoreCase("Adele")){ 
      thumb_image.setImageResource(R.drawable.rihanna); 

     }else if(song.getArtist().equalsIgnoreCase("Rihanna")){ 
      thumb_image.setImageResource(R.drawable.rihanna); 
     }else if(song.getArtist().equalsIgnoreCase("Eminem")){ 
      thumb_image.setImageResource(R.drawable.rihanna); 
     }else if(song.getArtist().equalsIgnoreCase("Michael Jackson")){ 
      thumb_image.setImageResource(R.drawable.rihanna); 
     } 


//  imageLoader.DisplayImage(song.get(CustomizedListView.KEY_THUMB_URL), thumb_image); 
     return vi; 
    } 
} 
0

Essayez avec cette façon

1 mainLayout

<ListView 
    android:id="@+id/listviews" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"></ListView> 

2 listitemlayout

<TextView 
    android:id="@+id/tviname" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" /> 


    <TextView 
    android:id="@+id/tvinum" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" /> 

3 MainActivity

ListView listviews; 
ArrayList<String> listname=new ArrayList<>(); 
ArrayList<String> listnum=new ArrayList<>(); 

listviews=(ListView)findViewById(R.id.listviews); 

    listname.add("amit"); 
    listnum.add("12334444444"); 

    listname.add("amit"); 
    listnum.add("12334444444"); 

    listviews.setAdapter(new Myadapter(MainActivity.this,listname,listnum)); 

4 AdapterClass

public class Myadapter implements ListAdapter { 

Activity activity; 
ArrayList<String> listname, listnum; 
int size; 

public Myadapter(Activity activity, ArrayList<String> listname, ArrayList<String> listnum) { 
    this.listname = listname; 
    this.listnum = listnum; 
    size = listname.size(); 
    this.activity = activity; 
} 

@Override 
public View getView(int position, View view, ViewGroup viewGroup) { 
    LayoutInflater inflater = (LayoutInflater) activity 
      .getSystemService(activity.LAYOUT_INFLATER_SERVICE); 

    View v = inflater.inflate(R.layout.mylayout, null); 
    TextView tviname = (TextView) v.findViewById(R.id.tviname); 
    TextView tvinum = (TextView) v.findViewById(R.id.tvinum); 


    tviname.setText(listname.get(position)); 
    tvinum.setText(listnum.get(position)); 
    return v; 
} 

@Override 
public void registerDataSetObserver(DataSetObserver observer) { 
    // TODO Auto-generated method stub 

} 

@Override 
public void unregisterDataSetObserver(DataSetObserver observer) { 
    // TODO Auto-generated method stub 

} 

@Override 
public int getCount() { 
    // TODO Auto-generated method stub 
    return size; 
} 

@Override 
public Object getItem(int position) { 
    // TODO Auto-generated method stub 
    return null; 
} 

@Override 
public long getItemId(int position) { 
    // TODO Auto-generated method stub 
    return 0; 
} 

@Override 
public boolean hasStableIds() { 
    // TODO Auto-generated method stub 
    return false; 
} 


@Override 
public int getItemViewType(int position) { 
    // TODO Auto-generated method stub 
    return 0; 
} 

@Override 
public int getViewTypeCount() { 
    // TODO Auto-generated method stub 
    return size; 
} 

@Override 
public boolean isEmpty() { 
    // TODO Auto-generated method stub 
    return false; 
} 

@Override 
public boolean areAllItemsEnabled() { 
    // TODO Auto-generated method stub 
    return false; 
} 

@Override 
public boolean isEnabled(int position) { 
    // TODO Auto-generated method stub 
    return false; 

} 

}