vishal gaurav
vishal gaurav

Reputation: 686

how to implement OnItemClickListener at class level

I have two listview inside class and I don't want to implement OnClickListener for each listview rather I want the class to implement OnClickListener and handle both listview OnClicklistener in single overriden method OnClickListener. Can anyone help.

Upvotes: 1

Views: 1542

Answers (3)

ths
ths

Reputation: 2942

private AdapterView.OnItemClickListener listener = new AdapterView.OnItemClickListener() {
    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

    }
};
...
listView1.setOnItemClickListener(listener);
listView2.setOnItemClickListener(listener);

Upvotes: 0

Ganesh Kanna
Ganesh Kanna

Reputation: 2275

class ListViewContainer implements AdapterView.OnItemClickListener{
ListView listView1;
ListView listView2;
private void someMethod(){
    listView1.setOnItemClickListener(this);
    listView2.setOnItemClickListener(this);
}
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
    if(parent == listView1){
        //Do Listview 1 things
    }else if(parent == listView2){
        //Do Listview 2 things
    }
}
}

Upvotes: 4

Rahul
Rahul

Reputation: 10625

private AdapterView.OnItemClickListener getItemClickListener(){

    return new AdapterView.OnItemClickListener() {
        @Override
        public void onItemClick(AdapterView<?> parent, View view, int position, long id) {

        }
    };
}

Upvotes: 0

Related Questions