Cómo obtener nombre de recurso de cadena por su valor
Quiero obtener un nombre de recurso de cadena o ID pasando su valor.
Ejemplo:
<string name="stringName">stringValue</string>
Quiero pasar el stringValue y obtener el stringName o ID (id value)
- Pantalla Splash mientras carga recursos en la aplicación android
- Android Soundpool Load (String path, int priority)
- Android que soporta todas las tabletas - categorice dibujos y diseños
- Recurso de cadena con símbolo "%"
- Android - getIdentifier devuelve siempre 0 (biblioteca + aplicación)
Sobre la base de ID i hará algunos cálculos para obtener otro ID de otro recurso de cadena
- Android.view.InflateException: Línea de archivo XML binario # 12: Error al inflar la clase <unknown>
- El elemento ListView no permanecerá "seleccionado"
- Android: Acceso a string.xml utilizando el nombre de la variable
- ¿Ayuda a analizar resources.arsc?
- Eclipse Android no limpia, no actualiza los recursos
- ¿Se puede añadir subcarpeta al diseño en el proyecto Eclipse Android?
- Android encontrar recurso por id durante el tiempo de ejecución
- Android XML Cómo obtener un ID de recurso (entero) de XML
No sé si eso es posible y creo que los ID pueden cambiar sin previo aviso si la clase R se genera de nuevo. Podrías por supuesto intentar un poco de magia de la reflexión en esta clase, pero recomendaría contra ella.
También tengo este problema, y puedo pensar en 2 posibles soluciones:
- cargar todas las cadenas y sus nombres en una tabla, y mirar en la tabla.
- O recorra mi lista completa de nombres, obteniendo el recurso de cadena para cada uno, y comparándolo con mi recurso de cadena conocido.
Estoy implementando el segundo, ya que mi lista de recursos de cadena no es muy grande, y no tengo que hacer esta operación muy a menudo. Una vez que se conoce el nombre, es posible obtener el ID de recurso mediante:
//Get resource id from name var resourceId = (int) typeof (MyApp_droid.Resource.String).GetField(MyStringName).GetValue(null);
(el código es C # porque estoy trabajando en Xamarin).
- Cómo hacer una copia de un archivo en android?
- Android Spinner con CheckBox setChecked (true) no funciona