Pregunta

Mi código es:

public static void ToastMemoryShort (Context context) {
    CharSequence text = getString(R.string.toast_memoryshort); //error here
    Toast.makeText(context, text, Toast.LENGTH_LONG).show();
    return;
    }

pero obtengo "No se puede hacer una referencia estática al método no estático getString (int) desde el tipo Context" en Eclipse.Estoy tratando de prepararme para localizar mi aplicación (obtener todas las cadenas codificadas de forma rígida en recursos), así que dónde tengo:

getString(R.string.toast_memoryshort)

Anteriormente tenía una cadena codificada que estaba bien.

No estoy seguro de qué está pasando aquí (novato de Java).¿Alguien puede iluminarme por favor?

Muchas gracias

Baz

¿Fue útil?

Solución

Solo usa esto en su lugar:

makeText (Context context, int resId, int duration) Hacer un estándar tostadas que solo contienen una vista de texto con el texto de un recurso.

De http://developer.android.com/reference/android/widget/Toast.html

Otros consejos

Cambiar a

 public static void ToastMemoryShort (Context context) {

        Toast.makeText(context, context.getString(R.string.toast_memoryshort), Toast.LENGTH_LONG).show();
        return;
        }

Podría hacer que su tostada sea más genérica de esta manera:

public void toast(String msg){
    Context context = getApplicationContext();
    CharSequence text = msg;
    int duration = Toast.LENGTH_SHORT;

    Toast toast = Toast.makeText(context, text, duration);
    toast.show();
}

Entonces solo llame cuando lo necesite así:

toast( "My message hardcoded" );

o refiriéndose a strings.xml de esta manera:

toast( this.getString(R.string.toast_memoryshort) );

Deberías cambiar

CharSequence text = getString(R.string.toast_memoryshort); //error here

para:

CharSequence text = context.getString(R.string.toast_memoryshort);

La función getString se implementa en Contexto # getString (int)

Utilice el siguiente código para obtener el resultado deseado:

Toast.makeText(getApplicationContext(),getString(R.string.exit_survey_toast),Toast.LENGTH_LONG).show();

reemplace exit_survey_toast con su valor de cadena.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top