我想这个问题说明了一切:我想为ListView创建自定义OnItemClickListener。我想添加和更改OnItemClickListener的参数,但是如何创建自己的参数,如果我单击ListView中的Item就会调用它呢?

最佳答案

首先创建一个接口,然后实现一个方法,在该方法中,您可以在自定义类中设置侦听器,然后已经使一个主类侦听您的自定义事件

接口:

public interface OnCustomEventListener{
  public void onEvent();   //can have parameters
}


您的方法适配器:
    私人OnCustomEventListener mListener; //领域

//setter method
public void setCustomEventListener(OnCustomEventListener eventListener) {
   this.mListener=eventListener;
}


听众:

someObjectYouWantToHaveYourCustomListenerToBeAssignedFor.setCustomEventListener(new OnCustomEventListener(){
    public void onEvent(){
    //do whatever you want to do when the event is performed.
    }
});


如何致电例如从您的适配器:

if(this.mListener!=null){
   this.mListener.onEvent();
}


附言您的自定义侦听器可以具有任意数量的参数

Source

09-28 06:15