Reputation: 369
I put this listener on several swipelistview
BaseSwipeListViewListener myBaseSwipeListViewListener = new BaseSwipeListViewListener() {
@Override
public void onOpened(int position, boolean toRight) {
//Here I need the calling swipelistview
}
}
with
swipelistview0.setSwipeListViewListener(myBaseSwipeListViewListener);
swipelistview1.setSwipeListViewListener(myBaseSwipeListViewListener);
swipelistview2.setSwipeListViewListener(myBaseSwipeListViewListener); //and so on
How could I get the calling swipelistview ?
Upvotes: 0
Views: 87
Reputation: 4016
Well I am not sure if I got you but what about just adding another parameter to your listener callback method? Like this:
BaseSwipeListViewListener myBaseSwipeListViewListener = new BaseSwipeListViewListener(){
@Override
public void onOpened(int position, boolean toRight, SwipeListView swipeListView) {
//Here you now have your calling swipelistview
}
}
In your BaseSwipeListViewListener now just add the third parameter by returning itself (this).
Update: I did not know that it is a library. This is not what I would do but if you don't want to edit the source just do the following:
BaseSwipeListViewListener myBaseSwipeListViewListener0 = new BaseSwipeListViewListener() {
@Override
public void onOpened(int position, boolean toRight) {
onOpenedAdvanced(position, toRight, swipelistview0);
}
}
BaseSwipeListViewListener myBaseSwipeListViewListener1 = new BaseSwipeListViewListener() {
@Override
public void onOpened(int position, boolean toRight) {
onOpenedAdvanced(position, toRight, swipelistview1);
}
}
BaseSwipeListViewListener myBaseSwipeListViewListener2 = new BaseSwipeListViewListener() {
@Override
public void onOpened(int position, boolean toRight) {
onOpenedAdvanced(position, toRight, swipelistview0);
}
}
public void onOpenedAdvanced(int position, boolean toRight, SwipeListView swipeListView){
//Here you now have your calling swipelistview
}
swipelistview0.setSwipeListViewListener(myBaseSwipeListViewListener0);
swipelistview1.setSwipeListViewListener(myBaseSwipeListViewListener1);
swipelistview2.setSwipeListViewListener(myBaseSwipeListViewListener2);
Upvotes: 1