2011-09-13 17 views
9

Sto utilizzando una casella di selezione che mostra un errore quando sto cercando di estrarre l'ID dell'articolo della casella selezionata. My Code va qui:Spinner con Listener di clic on

public void dispspi() 
    { 
    spinner = (Spinner) findViewById(R.id.spinner1); 
    ArrayAdapter <String> adap= new ArrayAdapter(this, android.R.layout.simple_spinner_item, level); 

     spinner.setAdapter(adap); 
     spinner.setOnItemClickListener(new OnItemClickListener() { 

     public void onItemSelected(AdapterView<?> arg0, View arg1,int arg2, long arg3) 
     { 
      int item = spinner.getSelectedItemPosition(); 

      p=item; 
     } 


     @Override 
     public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, 
       long arg3) { 
      // TODO Auto-generated method stub 

     } 



    }); 
    } 

Come ottenere l'id oggetto del filatore? Qualsiasi aiuto è appreciated..Thanks di anticipo

risposta

9

IIRC, si dovrebbe utilizzare un ascoltatore selezionato, non sceglie:

spinner.setOnItemSelectedListener(new OnItemSelectedListener() 

Quindi è possibile aggiungere il tag di override per il metodo scelto.

-1

si dovrebbe avere questo nell'ascoltatore (OnItemSelectedListener)

public void onNothingSelected(AdapterView<?> arg0) { 
} 

Potrebbe opere senza di essa, ma metterlo essere coerenti , ma ci potrebbero essere altri errori anche, puoi fornire il log degli errori?

7
private String selecteditem; 

spinner.setOnItemSelectedListener(new OnItemSelectedListener() 
{  
@Override 
public void onItemSelected(AdapterView adapter, View v, int i, long lng) { 

    selecteditem = adapter.getItemAtPosition(i).toString(); 
    //or this can be also right: selecteditem = level[i]; 
} 
    @Override  
    public void onNothingSelected(AdapterView<?> parentView) 
{   

} 
    }); 
0
spinner3.setOnItemSelectedListener(new OnItemSelectedListener() { 

     @Override 
     public void onItemSelected(AdapterView<?> parent, View v, 
       int postion, long arg3) { 
      // TODO Auto-generated method stub 
     String SpinerValue3 = parent.getItemAtPosition(postion).toString(); 

      Toast.makeText(getBaseContext(), 
        "You have selected 222 : " + SpinerValue3, 
        Toast.LENGTH_SHORT).show(); 

     } 

     @Override 
     public void onNothingSelected(AdapterView<?> arg0) { 
      // TODO Auto-generated method stub 

     } 
    }); 
Problemi correlati