Sintassi OnItemClickListener: qualcuno potrebbe spiegare cosa sta succedendo e perché funziona?

StackOverflow https://stackoverflow.com/questions/7333226

Domanda

Ho implementato un gridview e l'ho hackerato insieme a partire da esempi per avere un'idea di come funziona.Ho creato e Adapter e quando sono arrivato a implementare l'ascoltatore ho scoperto che si ottiene così.

private OnItemClickListener mColourClickListener = new OnItemClickListener() 
{
    @Override
    public void onItemClick(AdapterView<?> parent, View v, int position, long id){
        Log.d("LISTENER","Position Clicked ["+position+"]");
        }

};

Perché è diverso da un listview e perché ha i suoi metodi implementati tra parentesi graffe dopo la dichiarazione della variabile?

Molte grazie,

M

È stato utile?

Soluzione

Stai creando una nuova istanza di classe anonima che implementa l'interfaccia OnItemClickListener.È più facile che definire una nuova classe e quindi creare una nuova istanza di questa classe.La classe anonima ti consente di definire la classe inline dove ne hai bisogno.Gli ascoltatori di solito vengono utilizzati una sola volta, quindi sono spesso definiti come classi anonime.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top