Android 的接口定义和使用:
1 定义接口:
(1)定义
public class MyClass {
CallBackListener mCallBackListener;
public void UseCallBack(){
mCallBackListener.function();
}
public void setCallBackListener(CallBackListener mCallBackListener) {
this.mCallBackListener = mCallBackListener;
}
public interface CallBackListener{
void function();
}
}
调用
public class MainActivity extends AppCompatActivity {
MyClass myClass;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myClass = new MyClass();
myClass.setCallBackListener(new MyClass.CallBackListener() {
@Override
public void function() {
Log.e("---","Myclass");
}
});
myClass.UseCallBack();
}
}
(2)定义
public interface ICallBack {
void func1 ();
void func2 ();
}
实现
public class MyClass implements ICallBack{
CallBackListener mCallBackListener;
public void UseCallBack(){
mCallBackListener.function();
}
public void setCallBackListener(CallBackListener mCallBackListener) {
this.mCallBackListener = mCallBackListener;
}
@Override
public void func1() {
Log.e("---", "func1: ");
}
@Override
public void func2() {
Log.e("---", "func2: ");
}
public interface CallBackListener{
void function();
}
}
调用public class MainActivity extends AppCompatActivity {
MyClass myClass;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
myClass = new MyClass();
myClass.setCallBackListener(new MyClass.CallBackListener() {
@Override
public void function() {
Log.e("---","Myclass");
}
});
myClass.func1();
myClass.UseCallBack();
}
}