Obtener android.content.res.Resources $ NotFoundException: excepción incluso cuando el recurso está presente en android
Por favor, hágamelo saber a dónde voy mal para obtener el error
Estoy creando una aplicación que tienen una de sus actividades para ser sólo en modo de paisaje. Así que añadí lo siguiente en el archivo AndroidManifest.xml
- Cómo limpiar un proyecto de Android?
- Extraer el icono de la aplicación del archivo apk
- ¿Cómo agregar el Recurso de Biblioteca al Proyecto Cordova?
- Recursos HTML de Android con referencias a otros recursos
- Cómo realizar 3D Curve Wall con jQuery o js
<activity android:name=".LandScapeImageActivity" android:screenOrientation="landscape"></activity>
He creado una carpeta como
/ Res / layout-land
Y agregue un diseño llamado see_today_landscape_layout en él.
Y en onCreate()
agregué lo siguiente
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.see_today_landscape_layout); .... }
Pero cuando ejecuto mi aplicación estoy recibiendo el siguiente error
02-06 13:46:14.358: E/AndroidRuntime(13286): FATAL EXCEPTION: main 02-06 13:46:14.358: E/AndroidRuntime(13286): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mid.kew.activities/com.mid.kew.activities.LandScapeImageActivity}: android.content.res.Resources$NotFoundException: Resource ID #0x7f03002b 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2787) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2803) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.ActivityThread.handleRelaunchActivity(ActivityThread.java:4066) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.ActivityThread.access$2400(ActivityThread.java:135) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2140) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.os.Handler.dispatchMessage(Handler.java:99) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.os.Looper.loop(Looper.java:144) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.ActivityThread.main(ActivityThread.java:4937) 02-06 13:46:14.358: E/AndroidRuntime(13286): at java.lang.reflect.Method.invokeNative(Native Method) 02-06 13:46:14.358: E/AndroidRuntime(13286): at java.lang.reflect.Method.invoke(Method.java:521) 02-06 13:46:14.358: E/AndroidRuntime(13286): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868) 02-06 13:46:14.358: E/AndroidRuntime(13286): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626) 02-06 13:46:14.358: E/AndroidRuntime(13286): at dalvik.system.NativeStart.main(Native Method) 02-06 13:46:14.358: E/AndroidRuntime(13286): Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f03002b 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.content.res.Resources.getValue(Resources.java:892) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.content.res.Resources.loadXmlResourceParser(Resources.java:1869) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.content.res.Resources.getLayout(Resources.java:731) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.view.LayoutInflater.inflate(LayoutInflater.java:318) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.view.LayoutInflater.inflate(LayoutInflater.java:276) 02-06 13:46:14.358: E/AndroidRuntime(13286): at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:207) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.Activity.setContentView(Activity.java:1654) 02-06 13:46:14.358: E/AndroidRuntime(13286): at com.mid.kew.activities.LandScapeImageActivity.onCreate(LandScapeImageActivity.java:103) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1069) 02-06 13:46:14.358: E/AndroidRuntime(13286): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2751) 02-06 13:46:14.358: E/AndroidRuntime(13286): ... 12 more
Cruzé comprobado en R.java y tiene el recurso con el ID 7f03002b que la excepción está buscando y está presente allí …
He limpiado y reconstruir el proyecto por decir 5 veces, pero todavía el problema se produce.
Lo extraño es que esto funcionaba ayer y no funciona hoy. El código es el mismo.
Por favor, hágamelo saber qué hacer.
Estoy atascado y frustrado.
Raj
- Android estilo Recopilación de recursos (aapt) fallando: Tabla de recursos no válidos: tamaño de encabezado 0xc
- Android - cambia dinámicamente el menú de opciones, pero al inflar desde XML
- Cómo identificar dónde el código es incorrecto, si recibo advertencia Convertir a cadena: TypedValue?
- ¿Cómo asigno un dibujable a ImageView
- ¿Por qué no se actualizan mis archivos de activos?
- Dimens.xml en la carpeta de valores de 7 "y 10" tableta, ¿cómo?
- Compartir recursos en bruto a través de WhatsApp
- Android Pluralización no funciona, necesita ayuda
- En eclipse, vaya a Project> Clean …
- Seleccione su proyecto y, a continuación, pulse OK
- Relanzar la aplicación
Si sucede otra vez elimina el archivo de r.java. Se generará automáticamente.
Para mi condición la causa estaba tomando parámetro entero para TextView. Déjame mostrar un ejemplo
int i = 5; myTextView.setText(i);
Obtiene la información de error anterior.
Esto se puede arreglar mediante la conversión de int a una cadena como ésta
myTextView.setText(String.valueOf(i));
Al escribir int, espera que un recurso no sea el texto que está escribiendo. Así que tenga cuidado al establecer un entero como una cadena en android.
Dado que está configurando el diseño de forma explícita, es posible que desee probarlo y ponerlo en la carpeta predeterminada / de diseño que no esté en / layout-land, ya que si desea que Android maneje automáticamente la rotación para usted.
Mueva su xml de la disposición de res / layout-land a la carpeta del res / de la disposición. Esto funciona para mi
Compruebe que sus importaciones son correctas. Tuve un problema similar donde R estaba apuntando al archivo andriod del sistema R, no mi local. Espero que esto ayude.
Esto puede ocurrir debido a un idioma diferente en el teléfono para el cual el código no tiene el activo. Por ejemplo, tu preferencia.xml se coloca en xml-es y estás intentando ejecutar tu aplicación en un teléfono que tiene seleccionado francés, la aplicación se bloqueará.
Tengo este error de otra razón:
Tenía el archivo res/xml/data.xml
y estaba tratando de cargarlo con Resources
clase como este:
Resources.getSystem().getXml(R.xml.data);
Sin embargo, esto es incorrecto como el método Resources.getSystem()
devuelve un objeto de recursos compartidos global que proporciona acceso sólo a recursos del sistema.
La forma correcta es la siguiente (desde dentro de la Actividad):
this.getResources().getXml(R.xml.data);
Esto también puede causar algunos problemas: accidentalmente, uno de mis diseños estaba estacionado en la carpeta de recursos de mi tableta, por lo que recibí este error sólo con el diseño del teléfono. El diseño del teléfono simplemente no tenía un archivo de diseño adecuado.
He trabajado de nuevo después de mover el archivo de diseño en la carpeta estándar correcta y una reconstrucción de proyecto siguiente.
Proyecto> Limpieza
Trabajado para mí. A menudo lo obtengo cuando copio diseños de otras aplicaciones en una nueva aplicación.
Molesto.
Asegúrese de que el R que está señalando es el correcto. Tuve un problema muy similar a esto, donde una importación se insertó por Eclipse que apuntaba al archivo System R en lugar del proyecto. Se tomó un montón de rascarse la cabeza. Espero que esto ayude.
Tiene la orientación de pantalla establecida en horizontal en su xml. Si ha utilizado eclipse para generar este archivo que habría creado en res / layout-land / folder.But cuando se abre la actividad en modo de retrato la aplicación buscará xml en res / layout-port / carpeta o regular res / layout / . Si no tiene xml para el modo retrato, su aplicación se bloqueará.
Eliminé carpetas de build
dentro de un proyecto. Después de haberlo limpiado y reconstruido en Android Studio. A continuación, corrigió los errores en build.gradle y AndroidManifest.
En mi caso, mi versión de Build Tools en mi build.gradle para el módulo de aplicación estaba obsoleta en un proyecto antiguo. La actualización corrigió el problema:
android { ... buildToolsVersion "19.0.1" ...
Actualizado a la última versión de herramientas de compilación (25.0.1) y sincronizado el proyecto y todo estaba bien de nuevo.
He arreglado el de esta manera:
Cree una carpeta en su nombre de directorio de recursos "drawable-nodpi"
y luego mueva todos los recursos de este directorio desde otros directorios.
Ahora limpia tu proyecto y luego reconstruye. Ejecutar de nuevo con suerte que funcionará esta vez sin ningún recurso no se encuentra excepción.
Incluso ha aceptado la respuesta pero tengo respuesta diferente. Sobre todo se producirá cuando se está asignando algún texto para ver. por ejemplo .
currectText.setText(progress);
Pero si el parámetro no es una cadena le dará
android.content.res.Resources$NotFoundException: String resource ID
Así que haga parámetro como cadena. Es simple utilizar el operador '+'
currectText.setText(""+progress);
Im pasar int en el método setText acaba de convertir a la cadena problema resolver
- Se accede a la variable dentro de la clase interna. Necesita ser declarado final
- Kotlin-android: enlace de datos de referencia no resuelto