あるActivityで別のActivityを呼び出す変数またはメソッド
4877 ワード
1つのActivityで別のActivityを呼び出すには、主にインタフェースコールバックと静的メソッドがあります.しかし,静的手法に加えて,インタフェースコールバック手法は推奨されない.
私は内部クラス+staticを採用しています.くだらないことは言わないで、直接コードをつけます.
次にActivity Bで呼び出します.
私は内部クラス+staticを採用しています.くだらないことは言わないで、直接コードをつけます.
/**
* @author
* @description:
* @date :7/28 15:53
*/
public class A extends Activity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
AFactory.setA(this);
}
@Override
protected void onDestroy() {
AFactory.setA(null);
super.onDestroy();
}
public void Fun(){
//todo........
}
public static class AFactory{
public static A getA() {
return sA;
}
public static void setA(A a) {
sA = a;
}
public static A sA;
}
}
次にActivity Bで呼び出します.
if(A.AFactory.getA()!=null){
A.AFactory.getA().Fun();
}