您的位置:首页 > 其它

关于回调方法

2016-03-21 00:24 351 查看
借鉴:http://blog.csdn.net/xiaanming/article/details/8703708

回调的语法:

Class A实现接口CallBack callback——背景1
class A中包含一个class B的引用b ——背景2
class B有一个参数为callback的方法f(CallBack callback) ——背景3
A的对象a调用B的方法 f(CallBack callback) ——A类调用B类的某个方法 C
然后b就可以在f(CallBack callback)方法中调用A的方法 ——B类调用A类的某个方法D

public class MainActivity extends Activity implements View.OnClickListener{

private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.button);
button.setOnClickListener(this);
}

@Override
public void onClick(View v) {

}

}


MainActivity实现了OnClickListener接口

MainActivity包含了Button的引用button

Button中的父类View有setOnClickListener(OnClickListener)这个方法

MainAcivity调用setOnClickListener(OnClickListener)这个方法

然后button的父类可以在setOnClickListener方法中调用MainAcivity的onClick方法

另外一个,匿名内部类的
public class MainActivity extends Activity{

private Button button;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button)findViewById(R.id.button);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {

}
});
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: