getString()
es un método de la clase Context
¹. Si lo necesita dentro de una clase separada (que no se extiende a Context
), generalmente es mejor proporcionarlo como un argumento separado para el método que lo necesita.
Ejemplo:
public void logString(Context c, int stringId) {
Log.d("TAG", c.getString(stringId));
}
Una cosa es importante:Nunca tienda el contexto dentro de la clase separada.
Proporcione un argumento. De lo contrario, perderá memoria e interrumpirá todo el ciclo de vida de Android si el objeto que almacena el contexto vive más tiempo que el objeto al que pertenece originalmente el contexto (por ejemplo, una actividad).
¹ getString()
también se puede utilizar de la clase Resources
- que se puede obtener a través de Context.getResources()
getResources() es un método de clase de contexto. No puede usarlo sin una referencia de contexto válida –
No puede usar getResources. Él ya ha explicado por qué. – Sotti