es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Android 12: A partir de targetSdkVersion 31, los mensajes de tostada están recortados.

Recientemente mi smartphone (Google Pixel 3) recibió una actualización de Android 11 a 12. Después de eso, quería adaptar mi aplicación “Sensor Recording” en consecuencia. Así que realicé algunos cambios en “build.gradle”:

compileSdkVersion 31    // 30 antes
defaultConfig {
    targetSdkVersion 31    // 30 antes
    …
}
dependencies {
    implementation 'androidx.appcompat:appcompat:1.4.0'         // 1.3.1 antes
    …
}

Todo funcionaba correctamente. Sin embargo, detecté que los mensajes Toast eran diferentes ahora: incluyen un ícono inútil y, peor aún, el mensaje de texto estaba truncado.

Antes, con SdkVersion 30:

enter image description here

Y después, con SdkVersion 31:

enter image description here

Ambos Toast se generan con el mismo código. Pero en la nueva versión, faltan las partes importantes del texto. ¿Cómo puedo volver al comportamiento anterior de los Toast?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Para solucionar el problema de los mensajes Toast truncados en Android 12, puedes agregar la siguiente línea de código al archivo styles.xml de tu aplicación:

    <item name="android:toastsDefaultGravity">bottom|center</item>
    

    Esto cambiará la gravedad predeterminada de los mensajes Toast a la parte inferior y centro, lo que debería evitar que se truncen. Además, puedes eliminar el icono de los mensajes Toast agregando la siguiente línea de código a la clase Application de tu aplicación:

    Toast.makeText(getApplicationContext(), "Tu mensaje aquí", Toast.LENGTH_SHORT).setIcon(null).show();
    

    Esto creará un mensaje Toast sin icono, que debería parecerse al comportamiento antiguo de Toast.

Comments are closed.