Android中,如何在其他类调用Activity的方法,适用于类似场景
其他类以下简称B类
一. 借助Handler(优点可以传递数据)
1).Activity调用其他类(B类)的时候 传入Handler
B mB = new B(getApplicationContext(), mHandler);
2).在B类 需要调用Activity内方法的地方,调用mHandler.sendEmptyMessage(int what);
3). Activity的 Handler的handleMessage()中 设置与B类相对应的msg.what 并在其中调用需要调用的Activity方法
private Handler mHandler = new Handler() {
@SuppressWarnings(“unchecked”)
public void handleMessage(android.os.Message msg) {
if (msg.what == 0x001) {
// 相关需要调用的方法
}
}
}
……………………………………………………………………………….
二. 使用接口回调方式
B类属于调用方(定义接口) Activity属于实现方(具体方法在Activity中实现)
1). 在B类 定义好接口,并定义好调用方传入接口对象的方法
Class B{
/* 全局接口对象引用/
private iNetFail mNetFail;
/* 定义好接口/
public interface iNetFail {