2012-04-12 12 views
2

Ich zeige einfache ListView. Bei einem langen Druckvorgang wird Dialog angezeigt, um dieses Element aus ListView zu entfernen. Hier ist mein Code:Entfernen Sie einfach ListView Element in Android

myList = (ListView) findViewById(R.id.listSendEmailFinal); 

myList.setOnItemLongClickListener(new AdapterView.OnItemLongClickListener() { 
@Override 
public boolean onItemLongClick(AdapterView<?> av, View v, int pos, long id) { 
     return onLongListItemClick(v,pos,id); 
} 
protected boolean onLongListItemClick(View v, final int pos, long id) { 
     final String str=myList.getItemAtPosition(pos).toString(); 
     Log.i("ListView", "onLongListItemClick stirng=" + str); 
     AlertDialog.Builder builder = new 
       AlertDialog.Builder(EmailReceiversActivity.this); 
      builder.setMessage("Are you sure you want to exit?") 
      .setCancelable(false) 
      .setPositiveButton("Yes", new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int id) { 

         } 
        }) 
        .setNegativeButton("No", new DialogInterface.OnClickListener() { 
         public void onClick(DialogInterface dialog, int id) { 
          dialog.cancel(); 
         } 
        }); 
      AlertDialog alert = builder.create(); 
      alert.show(); 
      return true; 
     } 

    }); 

Wenn ich drücken Sie ‚Ja‘, das Element sollte von listview.I've verwendet ArrayAdapter entfernt werden. Und 'listitems' ist ein String-Array

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,listItems); 
myList.setAdapter(adapter); 

Bitte helfen Sie mir.

Antwort

5

in Click-Ereignis ja Schaltfläche Entfernen Sie einfach die Option aus "listitems" und rufen adapter.notifyDataSetChanged();

Das ist es ..!

4

nur versuchen, diese in der YES-Taste klicken:

listItems.remove(pos); 
adapter.notifyDataSetChanged(); 
+0

Ja, ich habe das versucht. Eigentlich funktioniert listItems.remove (pos) nicht für String Array. Und sollte ich ein neues Objekt für ArrayAdapter erstellen? –

+0

Ich habe Ihnen einen Weg gezeigt, jetzt, ob Sie ArrayList oder Array haben, können Sie für das Entfernen dieses bestimmten Objekts tun –

+0

FYI, ArrayList wäre eine bessere Option im Vergleich zu String Array. –

Verwandte Themen