2014-07-08 49 views
0

我正在做一個Android應用程序,我有問題得到的立場,知道列表我會擦除哪個elemenent。 我的代碼如下所示:位置訪問失敗setOnItemClickListener

final ListView lista = (ListView) findViewById(R.id.listaPlantilla); 
ArrayAdapter<String> adaptador_fileList = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, datos); 

lista.setAdapter(adaptador_fileList); 

     lista.setOnItemClickListener(new OnItemClickListener() { 

      @Override 
      public void onItemClick(AdapterView<?> a, View v, int position, long id) { 
       AlertDialog.Builder ad = new AlertDialog.Builder(Mis_cervezas.this); 


       ad.setCancelable(true); 
       ad.setTitle("Opciones"); 
       ad.setIcon(android.R.drawable.ic_menu_info_details); 


       ad.setItems(R.array.opciones_mis_cervezas, new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int item) { 
         switch(item){ 
         case 0:// Ver Ficha 
          break; 
         case 1://Tutorial 
          Toast toast2 = Toast.makeText(getApplicationContext(),"He apretado Comenzar Tutorial", Toast.LENGTH_SHORT); 
          toast2.show(); 
          break; 
         case 2://Eliminar 
          lista.removeViewAt(position); // error line 
          break; 
         } 
        } 
       }); 
       ad.setNegativeButton(R.string.cancelar, new DialogInterface.OnClickListener() { 
        public void onClick(DialogInterface dialog, int item) { 
         // Do something with the selection 
        } 
       }); 
       ad.show(); 
      } 
     }); 

我需要知道我怎麼可以刪除一個元素。代碼不讓我使用位置,所以我需要知道如何獲得位置。

非常感謝。

+0

onItemClick似乎給你一個位置。 – Andy

回答

0

Object item = adaptador_fileList.getItem(position);

adaptador_fileList.remove(item);

adapter.notifyDataSetChanged();