package listenermode;
public class Button {
//在类中定义接口对象 ,都是button的行为
public interface OnClickListener {
public void onClickListener ();
}
private OnClickListener listener =null;
public void setOnClickListener(OnClickListener cbl){
this.listener = cbl;
}
//相当于是onClick的触发
public void clickButton (){
System.out.println("button被按下 ");
if (listener !=null){
//在关心的方法中,调用接口对象中定义的方法
listener.onClickListener();
}
}
}
测试类如下
package maintest;
import listenermode.Button;
import listenermode.Button.OnClickListener;
public class Maintest {
public static void main(String [] args ){
Button button= new Button();
button.setOnClickListener(new OnClickListener() {
public void onClickListener() {
System.out.println("按下后执行的操作,如页面的跳转等");
}
});
button.clickButton();
}
}
(参考 http://www.cnblogs.com/cbf4life/tag/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/)