Cómo implementar la función de salida en Android
① Cree una nueva clase ActivityCollector como administrador de actividades, el código es el siguiente:
clase pública ActivityCollector {
Lista pública estática
public static List
public static void addActivity (Actividad de actividad) {
actividades.add(actividad);
}
public static void removeActivity(actividad de actividad) {
actividades.remove(actividad);
}
public static void FinishAll() {
for (Actividad actividad: actividades)
{
if( !actividad.isFinishing())
{
actividad.finish();
}
}
activities.clear();
El siguiente código finalizará el proceso del programa actual y garantizará que el programa salga limpiamente.
android.os.Process.killProcess(android.os.Process.myPid());
}
}
② Luego cree una nueva clase BaseActivity y deje que todas las actividades hereden de esta clase, es decir, todas las demás actividades se cambian para extender BaseActivity en lugar de la extensión original AppCompatActivity.
la clase pública BaseActivity extiende AppCompatActivity {
@Override
protected void onCreate(Bundle saveInstanceState) {
super.onCreate(savedInstanceState) ;
Log.d("BaseActivity", getClass ().getClass().getSimpleName());
ActivityCollector.addActivity(this);
}
@Override
protected void onDestroy() {
super.onDestroy();
ActivityCollector.removeActivity(this);
}
}
3) SetContentView(R.layout.*****); en la página (Actividad) donde desea salir del programa; y agregue el siguiente código debajo para que pueda salir del programa completo con solo hacer clic en un botón.
Botón botón3 = (Botón) findViewById(R.id.*****);
botón3.setOnClickListener(new View.OnClickListener()). OnClickListener(){
@Override
public void onClick(View v) {
ActivityCollector.finishAll();
}
});
//* La parte numérica depende de la situación específica