Por favor, avíseme en qué me equivoco para obtener el error.
Estoy creando una aplicación que tiene una de sus actividades solo en modo horizontal. Así que agregué lo siguiente en el archivo AndroidManifest.xml
<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, aparece 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
Crucé el check in R.java y tiene el recurso con el ID 7f03002b que está buscando la excepción y está presente allí ...
Limpié y reconstruí el proyecto, digamos 5 veces, pero el problema persiste.
El punto extraño es que esto funcionaba ayer y no funciona hoy. El código es el mismo.
see_today_landscape_layout.xml
archivo.compile 'com.android.support:appcompat-v7:23.4.0'
si me quedo con elv7:22.2.0'
trabajoRespuestas:
si vuelve a suceder, elimine el archivo r.java. se generará automáticamente.
fuente
Para mi condición la causa fue tomando
int
parámetroTextView
. Déjame mostrarte un ejemploint i = 5; myTextView.setText(i);
obtiene la información de error anterior.
Esto se puede solucionar convirtiendo
int
a algoString
asímyTextView.setText(String.valueOf(i));
Mientras escribe
int
, espera un recurso, no el texto que está escribiendo. Así que tenga cuidado al configurar unint
comoString
en Android.fuente
Dado que está configurando el diseño explícitamente, es posible que desee intentar colocarlo en la carpeta predeterminada / layout, no en / layout-land, ya que eso es si desea que Android maneje la rotación automáticamente por usted.
fuente
Trate de mover su diseño xml de
res/layout-land
ares/layout
carpetafuente
res/layout-sw600dp
ares/layout
entonces funcionó .. Gracias por su ans ..Esto puede suceder debido a un idioma diferente en el teléfono para el cual su código no tiene el activo. Por ejemplo, su preferencia.xml se coloca en xml-en y está intentando ejecutar su aplicación en un teléfono que tiene francés seleccionado, la aplicación se bloqueará.
fuente
Recibí este error por otra razón:
Tenía el archivo
res/xml/data.xml
y estaba tratando de cargarlo con unaResources
clase como esta:Resources.getSystem().getXml(R.xml.data);
Sin embargo, esto es incorrecto ya que el método
Resources.getSystem()
devuelve un objeto global de recursos compartidos que proporciona acceso solo a los recursos del sistema.La forma correcta es la siguiente (desde el interior de la Actividad):
this.getResources().getXml(R.xml.data);
fuente
En mi caso, mi versión de Build Tools en mi build.gradle para el módulo de la aplicación estaba desactualizada en un proyecto antiguo. Actualizarlo solucionó el problema:
android { ... buildToolsVersion "19.0.1" ...
Se actualizó a la última versión de herramientas de compilación (25.0.1), se sincronizó el proyecto y todo volvió a estar bien.
fuente
Verifique para asegurarse de que sus importaciones sean correctas. Tuve un problema similar en el que
R
apuntaba alR
archivo del sistema Android , no al local.fuente
Eliminé carpetas
build
dentro de un proyecto. Después de limpiarlo y reconstruirlo en Android Studio. Luego, se corrigieron los errores en build.gradle y AndroidManifest.fuente
Esto también puede causar algunos problemas: accidentalmente uno de mis diseños estaba estacionado en la carpeta de recursos de mi tableta, así que recibí este error solo con el diseño del teléfono. El diseño del teléfono simplemente no tenía un archivo de diseño adecuado.
Trabajé nuevamente después de mover el archivo de diseño en la carpeta estándar correcta y una siguiente reconstrucción del proyecto.
fuente
Asegúrese de que la R a la que apunta sea la correcta. Tuve un problema muy similar a este, donde Eclipse insertó una importación que apuntaba al archivo System R en lugar del proyecto. Me costó mucho rascarse la cabeza. Espero que esto ayude.
fuente
Tiene la orientación de la pantalla configurada en horizontal en su xml. Si ha utilizado eclipse para generar este archivo, se habría creado en la carpeta res / layout-land /. Pero cuando abra la actividad en el modo vertical, la aplicación buscará xml en la carpeta res / layout-port / o en la carpeta res / layout / normal. . Si no tenía xml para el modo vertical, su aplicación se bloqueará.
fuente
He arreglado el de esta manera:
Cree una carpeta en el nombre de su directorio de recursos
"drawable-nodpi"
y luego mueva todos los recursos en este directorio desde otros directorios dibujables.Ahora limpie su proyecto y luego reconstruya. Ejecutar de nuevo, con suerte, esta vez funcionará sin ninguna excepción de recurso no encontrado.
fuente
Recibí este error cuando intentaba acceder a los datos del paquete desde One Intent usando getInt ("ID").
Lo resolví usando getString ("ID").
De Activity1 tuve
Intent intent=new Intent(this,ActivityB.class); intent.putExtra("data",data)// startActivity(intent);
En la Actividad B,
Bundle bundle=getIntent().getExtras(); if(extras!=null){ // int x=extras.getInt("Data"); This Line gave me error int x=Integer.parseInt(extras.getString("Data")); // This solved the problem. }
fuente
Para mí, la invalidación de caché y el reinicio no funcionaron. Eliminé las carpetas .idea y .gradle. Si lo hace, no olvide que cosas como registros de compilación o algo así podrían desaparecer.
fuente