CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: gianpassa con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 10 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 34 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 1 su 1
Discussione:

Gestire gli onClick in una ListView

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Jun 2011
    Messaggi
    13

    Ringraziamenti
    1
    Ringraziato 1 volta in 1 Post
    Predefinito

    Gestire gli onClick in una ListView

    Ciao, nella mia applicazione ho bisogno di gestire dei click su un ToggleButton che sta in una row di una listview.
    Più nello specifico, ogni row è composta da 2 textview e un togglebutton, e la creazione della view è fatta tramite CustomAdapter, allego un pò di codice:

    codice:
    public class BuffoArrayAdapter extends ArrayAdapter<ClasseBuffo> {
    	
    	ArrayList<ClasseBuffo> items;
    	ToggleButton tb;
    	ClasseBuffo o;
    	int pos;
    	
    	public BuffoArrayAdapter(Context context, int textViewResourceId, ArrayList<ClasseBuffo> items) {
            super(context, textViewResourceId, items);
            this.items = items;
    }
    
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
            View v = convertView;
            if (v == null) {
                LayoutInflater vi = (LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
                v = vi.inflate(R.layout.row, null);
            }
            pos=position;
            o = items.get(position);
            if (o != null) {
                    TextView tt = (TextView) v.findViewById(R.id.text1);
                    TextView bt = (TextView) v.findViewById(R.id.text2);
                    tt.setText(o.getNome());
                    bt.setText(o.getCredito());
                    tb = (ToggleButton)v.findViewById(R.id.toggle);
                    if(o.getPagato().equals("1")){
                    	tb.setChecked(true);
                    }
                    
                    tb.setOnClickListener(new OnClickListener(){
               
    					public void onClick(View v) {
    						if(tb.isChecked()== true){
    							tb.setChecked(false);
    							items.get(pos).pagato="0";				
    						}else{
    							tb.setChecked(true);
    							items.get(pos).pagato="1";
    						}
    						
    						
    					}
    					
                    });
            }
            return v;
    }
    }
    La mia idea era di gestire i click direttamente all'interno dell'arrayadapter, ma in questo modo devo dire che viene un macello, per esempio se clicco un togglebutton nella terza riga modifico anche quello nell'ultima, come potrei fare per gestire tutto in maniera corretta ?

  2.  

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy