同樣使用Listener,有著類似但有些差異的語法
以下以常用的滑鼠click事件做簡單比較
一.Flash
Flash在對於所有的Event統一使用addEventListner method來做監聽
主要傳入的兩個參數,分別是要監聽的事件類型與要觸發的function
btn:Button=new Button();
addChild(btn);
btn.addEventListner(MouseEvent.CLICK,onClickHandler)
function onClickHandler(e:MouseEvent):void{
//..do something..
}
二.Java
在Java上要監聽不同的事件,要使用不同的addXXXListener method
例如addActionListener,addWindowListener...
每個不同的addXXXListener method所接收的參數
都是不同的Listner物件instance,
所要執行的動作則是在這Listner物件內 implement
要監聽的動作 handler
Button btn=new Button();
add(btn);
btn.addActionListener(myactionListener);
ActionListener myactionListener=new ActionListener(){
public void actionPerformed(ActionEvent e) {
//..do something..
}
}
三.Android
在Android上同樣是對不同的事件,有不同的setXXXListener
每個setXXXListener所接收參數都是不同的listener物件
與Java的差異是method名稱addXXXListener與setXXXListener
的不同而已
例setOnClickListener ,setOnFocuseChangeListener,
setKeyListener..
Button btn=(Button)findViewById(R.id.mybtnid);
btn.setOnClickListener(myclickListener);
Button.OnClickListener myclickListener=new Button.OnClickListener(){
public void onClick(View v){
//..do something..
}
}
沒有留言:
張貼留言