CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: carotix con ben 2 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: carotix con ben 11 Thanks ricevuti negli ultimi sette giorni
Utente del mese: megthebest con ben 24 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 1 su 1
Discussione:

ListiView con due bottoni

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
    Oct 2011
    Messaggi
    12

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    ListiView con due bottoni

    Ciao a tutti,
    sono un nuovo utente e sono un filo esasperato...

    Vi spiego il mio problema, che cercato in internet ma non mi pare di aver trovato nulla di significativo...

    Quello che vorrei fare è avere una ListView composta da una textView e due pulsanti...

    I due pulsanti devono avere due comportamenti differenti:
    _uno deve avviare una nuova attività
    _l'altro deve aprire una AlertDialog

    Per ora riesco solo a comporre la ListView, ma qui mi sono arenato...

    Voglio dire, non so come associare ai bottoni l'evento "click"

     
    1
    private static class EfficientAdapterTesto extends BaseAdapter
    2
        {
    3
            
    4
            private LayoutInflater mInflater;
    5
            
    6
            //Attributo contenente la lista di categorie da stampare
    7
            private String [] categories;
    8
            
    9
            //Costruttore
    10
            public EfficientAdapterTesto(Context context, String [] _categories)
    11
            {
    12
                categories = _categories;
    13
                mInflater = LayoutInflater.from(context);
    14
            }
    15
    16
            //Lunghezza della lista delle categorie
    17
            public int getCount() 
    18
            {
    19
                return categories.length;
    20
            }
    21
    22
            public Object getItem(int position)
    23
            {
    24
                return position;
    25
            }
    26
            public long getItemId(int position) 
    27
            {
    28
                return position;
    29
            }
    30
    31
            //Metodo di costruzione del singolo item della lista
    32
            public View getView(int position, View convertView, ViewGroup parent)
    33
            {
    34
                ViewHolder holder;
    35
                
    36
                if (convertView == null)
    37
                {   
    38
                        //Assegno l'aspetto grafico (xml) al singolo item 
    39
                    //tramite il file list_view.xml
    40
                    convertView = mInflater.inflate(R.layout.list_view, null);
    41
                    holder = new ViewHolder();
    42
                    //recupero gli id degli elementi
    43
                    holder.text2 = (TextView)convertView.findViewById(R.id.TextView02);
    44
                    holder.delete = (Button)convertView.findViewById(R.id.cancella);
    45
                    holder.details = (Button)convertView.findViewById(R.id.dettagli);
    46
                    convertView.setTag(holder);
    47
                }
    48
                else 
    49
                {
    50
                    holder = (ViewHolder) convertView.getTag();
    51
                }
    52
    53
                //Imposto il testo del item in posizione position
    54
                holder.text2.setText(categories[position]);
    55
                
    56
                return convertView;
    57
            }
    58

    Per come ho scritto il codice estendo una classe per personalizzare ogni singolo Item, ma quando provo ad inserire la riga di codice

    7
     
    1
    2
                    holder.delete.setOnClickListener(new View.OnClickListener() {
    3
                        public void onClick(View v) {
    4
                            FAI QUALCOSA
    5
                        }
    6
                    });
    7


    dove fai qualcosa in questo caso è una AlertDialog, il sistema mi dice che non conosce l'alterDialog. Ho provato a crearmi un metodo che viene richiamto, sempre all'interno della classe EfficientAdapter, ma anche in questo caso ho un grosso problema, in quanto il costruttore della classe AlertDialog vuole il context...e non so come recuperlo...
    Avevo messo una vairabile globale, ma diceva che non potevo usare oggenti non statici in un ambiente statico...


    Suggerimenti??

  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