標籤:java android 回呼函數
1.類比java View類:
package com.test;/** * Created by dandan on 15-2-7. */public class View { /**設定預設ID**/ public static final int NO_ID = -1; /**設定每個控制項的ID用於被子類覆蓋**/ public int mID = NO_ID; /**儲存點擊回呼函數**/ public OnClicklistener mOnClicklistener; public interface OnClicklistener { void onClick(View view); }; void setOnClicklistener(OnClicklistener onClicklistener) { this.mOnClicklistener = onClicklistener; }; public int getId(){ return mID; };}<span style="color:#ff0000;"></span>
2.類比android控制項繼承View
package com.test;/** * Created by dandan on 15-2-7. */public class AnimationButton extends View{ /** * 按鈕子類中類比使用者點擊的方法 * * **/ public void moniClick(){ this.mID = 20; OnClicklistener clicklistener = this.mOnClicklistener; clicklistener.onClick(this); }}
3.類比用戶端使用AnimationButton控制項
package com.test;/** * Created by dandan on 15-2-7. */public class MainActivity { public static void main(String[] args) { AnimationButton animationButton = new AnimationButton(); animationButton.setOnClicklistener(new View.OnClicklistener() { @Override public void onClick(View view) { System.out.print(view.getId()); } });
<span style="white-space:pre"></span>//類比使用者點擊按鈕 animationButton.moniClick(); }}
android setOnClickListener 回呼函數理解