Buenas,
Eso es porque creas el dialogo desde la función de callback que maneja el evento del botón:
Código Java:
Ver originalProgressDialog dialogo = new ProgressDialog(MainActivity.this);
Al crear el dialogo desde ese ámbito (dentro de un método anónimo) luego pierdes la referencia y no tienes ningún modo de controlarlo.
Una forma sencilla de hacerlo es pasar la referencia del dialogo ya sea por constructor o mediante un metodo set. Por ejemplo:
Código Java:
Ver originalprivate class enviar_post
extends AsyncTask
<String,
String, String
> { private ProgressDialog dialogo;
@Override
http_request conexion = new http_request();
conexion.url("http://xxxx/android/login.php");
conexion.parametro("username", "Prueba 1");
conexion.parametro("password", "Prueba 2");
String result
= conexion.
post(); return result;
}
public enviar_post setProgressDialog(ProgressDialog dialog) {
this.dialogo = dialog;
return this;
}
protected void onPostExecute
(String parms
) { startActivity(new Intent(MainActivity.this, ResultadosActivity.class));
Toast.makeText(MainActivity.this, parms, Toast.LENGTH_SHORT).show();
this.dialogo.close();
}
}
..............
new enviar_post().setProgressDialog(dialogo).execute();
Un saludo