从Activity中调用非Activity类中的方法可以通过以下几种方式实现:
MyClass myObject = new MyClass();
myObject.myMethod();
在非Activity类中定义方法:
public class MyClass {
public void myMethod(Activity activity) {
// 在这里可以通过activity调用Activity中的方法
activity.someMethod();
}
}
在Activity中调用该方法:
MyClass myObject = new MyClass();
myObject.myMethod(this);
定义接口:
public interface MyInterface {
void onMethodCalled();
}
在非Activity类中实现接口:
public class MyClass implements MyInterface {
@Override
public void onMethodCalled() {
// 在这里可以调用Activity中的方法
}
}
在Activity中传递非Activity类的实例给接口类型的变量:
MyInterface myObject = new MyClass();
非Activity类可以通过调用接口方法来触发Activity中的方法:
myObject.onMethodCalled();
这些方法可以根据具体的需求选择使用,根据非Activity类的复杂性和与Activity的交互程度来决定使用哪种方式。
领取专属 10元无门槛券
手把手带您无忧上云