2010-02-01 27 views
5

Estoy intentando depurar algo y quiero abrir un cuadro de diálogo de mensaje. Eclipse me dice que me quiere "Crear Método showAlert (cadena, cadena, cadena, booleano)"¿Cómo uso el método showAlert en Android?

que se haya importado esta android.content.DialogInterface importación;

¿qué paso me estoy perdiendo?

Respuesta

0

Parece que puede haber una discrepancia de tipo de parámetro. Verifique que sus parámetros sean en realidad cadenas o booleanos. ¿Tal vez necesita llamar al toString() en sus objetos?

+0

Bueno, he ido de otra manera ... esos son los parámetros que se dieron en la página de ayuda del otro blog. Así que ahora estoy usando el constructor de AlertDialog developer.android.com ... han logrado superar ese error a esto: [2010-02-01 13:41:12 - MobileServiceCallContacts] ActivityManager: java.lang.SecurityException: La negación de permiso : el inicio de la intención {flg = 0x10000000 cmp = com.msi.ibm.tutorial/.MobileServiceCallContacts} de null (pid = -1, uid = -1) requiere android.permission.READ_CONTACTS y sí, tengo ese permiso establecido en mi manifiesto ... ¿en qué otro lugar se supone que irá? – jkmcgee

+0

Debería abrir otra pregunta para eso ... pero hasta donde yo sé, solo los permisos de lugar deben estar en AndroidManifest.xml – Justin

6

Si están tratando de crear y mostrar una AlertDialog, que debiera usuario AlertDialog.Builder por ejemplo.

DialogInterface, es como su nombre implica, una interfaz y sólo tiene 2 métodos: cancelar() y Rechazar().

Creación de un AlertDialog es bastante fácil:

new AlertDialog.Builder(this) 
.setTitle("Some Title") 
.setMessage("some message") 
.setPositiveButton("OK", new OnClickListener() { 
    public void onClick(DialogInterface arg0, int arg1) { 
     // Some stuff to do when ok got clicked 
    } 
}) 
.setNegativeButton("cancel", new OnClickListener() { 
    public void onClick(DialogInterface arg0, int arg1) { 
     // Some stuff to do when cancel got clicked 
    } 
}) 
.show(); 

que muestra un simple AlertDialog.

Un consejo: Comprobar Activity.showDialog (int) y Activity.onCreateDialog() que hacen la vida más fácil al utilizar los cuadros de diálogo.

5

Si sólo está mostrando un mensaje de depuración puede intentar Toast.makeText():

Toast.makeText(context, "Hi there!", Toast.LENGTH_SHORT).show(); 

No se olvide de llamar show().

+0

¿Hay alguna forma de agregar un botón de confirmación al método Toast? Es por eso que quiero usar el método de diálogo de alerta. – jkmcgee

+0

En principio, puede establecer el diseño de Toast en todo lo que desee, pero el uso intentado de Toast es mostrar pequeños mensajes que desaparecen por su cuenta (por ejemplo, si cambia el volumen de audio de su teléfono, ese es un Toast que muestra el volumen actual). – Ridcully

+0

Toast.LENGHT_SHORT debe ser Toast.LENGTH_SHORT – AaA

Cuestiones relacionadas