2012-01-25 35 views
46

Me di cuenta de que la clase Activity tiene dos métodos diferentes para obtener un recurso String. Esto es posible mediante el uso de:Diferencia entre getString() y getResources.getString()

  • getString(int resId): Devuelve una cadena localizada de tabla de cadenas por defecto del paquete de la aplicación.

  • getResources().getString(int id): Devuelve el valor de cadena asociado con un ID de recurso en particular. Será despojado de cualquier información de texto con estilo.

No entiendo cuál es la diferencia entre ambos métodos. ¿Puede alguien decirme?

+0

Bueno, la diferencia principal es que la actividad # getString() sólo acceder a su ** poseer ** recursos, mientras que es completamente posible buscar recursos de otras aplicaciones como '¿Recursos? objetar y elegir de eso. Es decir. en términos prácticos, no hay diferencia. – Jens

Respuesta

63

Ellos son los mismos que Activity.getString(int) hace exactamente eso:

public final String getString(int resId) { 
    return getResources().getString(resId); 
} 
4

Son el mismo método, nada especial sobre ellos.

+2

no es el mismo método, pero dos métodos diferentes hacen el mismo trabajo. –

3

En Fragmentos puede utilizar también getString() en lugar de getActivity().getString()