usando un recurso de cadena en un brindis
-
27-10-2019 - |
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
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.