2010-08-03 17 views
13

Ambas actividades están en el mismo paqueteERROR Sin identificador del paquete al conseguir valor del número de recursos

Segunda actividad utiliza segundo archivo de diseño

setContentView(R.layout.main2); 

Errores en esta línea en el Second_Activity.

EditText text1 = (EditText) findViewById(R.id.EditText03); 

Aquí está el archivo de diseño para Second_Activity.

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <LinearLayout 
     android:id="@+id/LinearLayout01" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" > 

     <TextView 
      android:id="@+id/TextView01" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="Answer Is : " > 
     </TextView> 

     <EditText 
      android:id="@+id/EditText03" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" > 
     </EditText> 
    </LinearLayout> 

    <Button 
     android:id="@+id/Button01" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:onClick="onClick" 
     android:text="Calling an intent" > 
    </Button> 

</LinearLayout> 

Éstos son los errores en la ventana LogCat

08-01 19:32:20.340: WARN/ResourceType(8875): No package identifier when getting value for resource number 0x00000005 
08-01 19:32:20.390: ERROR/AndroidRuntime(8875): Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x5 

mail.xml

<TextView 
    android:id="@+id/TextView01" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:text="First Number : "> 
</TextView> 

<EditText 
    android:id="@+id/EditText01" 
    android:inputType="number" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
</EditText> 

<TextView 
    android:id="@+id/TextView02" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:text="Second Number: "> 
</TextView> 

<EditText 
    android:id="@+id/EditText02" 
    android:inputType="number" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
</EditText> 

secondscreen.xml

<TextView 
    android:id="@+id/TextView03" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" android:text="Answer Is : "> 
</TextView> 

<EditText 
    android:id="@+id/main2EditText01" 
    android:inputType="number" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 
</EditText> 

archivo de manifiesto XML

<activity android:name=".ActivityTwo"/> 

+0

Hay algo sintácticamente incorrecto con sus archivos XML que está impidiendo que se generen sus identificadores en R. ¿Podría publicar el resto de sus XML? Tal vez te estás perdiendo una etiqueta cercana o algo así. –

+0

nuevo aquí no estoy seguro de cómo poner los archivos xml en una respuesta –

+0

Oh; pegarlo en tu pregunta está bien. :) –

Respuesta

91

Tengo este mismo mensaje de error cuando intenté usar TextView.setText pasar un char en lugar de una cadena. Esto tiene sentido ya que el carbón sería promovido a un int que significaba que yo estaba realmente llamando al

TextView.setText(int resId); 

Y ya que no era un recurso con ese valor, que no funcionaría.

+5

Gracias por esto. Intentaba enviar un Entero con setText(). Usar Integer.toString hizo el truco para mí. –

+3

asker debe marcar esto como correcto ... – fandang

+0

Este es el motivo real de esta pregunta. No bajé e intenté con la respuesta aceptada. Pero pensé que finalmente y vine a ponerlo como una respuesta. Pero @John ya lo puso :) Utilicé TextView.setText (String.valueOf (myIntValue)); –

7

Cuando pase un número entero al TextView.setText() para que se muestre, android asume que es un identificador de recursos y es por eso que está obteniendo Resource$NotFoundException. Intente convertir int en String antes de pasarlo a TextView.setText(): TextView.setText(String.valueOf(i)).

7

Sólo por el protocolo, también se puede utilizar:

TextView.setText("" + intVar) en lugar de TextView.setText(intVar)

2

Para mí que tenía que ir en el archivo XML para el botón. Ahí noté un valor de cadena codificado duro. Tuve que quitar eso, y también tuve que usar Textview.setText("" + intVar);

34

cara con el mismo error

Finalmente encontré que no es un error debido a su diseño xml

algún lugar de su código establecido TextView.setText(int)

prueba TextView.setText(Integer.toString(int));

+0

Estuve peleando esto durante una buena hora, resulta que estaba haciendo todo bien excepto pasar un String a setText(), ¡gracias! – Roberto

0

Estaba usando la biblioteca Picasso para cargar la imagen de la red. Las URL están en ArrayList. No estaba usando arraylist.get() para obtener la posición de la url en ArrayList.

0

Recientemente tuve este problema, cuando estaba tratando de integrar SocialAuth libray con mi aplicación Android con Android Studio. Cuál fue mi problema fue que algunos de mis recursos como el ícono de Facebook estaban en la carpeta mipamp. Lo moví a carpeta de drawasbles y el problema se solucionó.

0

Se debe a un error de tipo de letra. Tienes que intentar esto: TextView.setText (Integer.toString (variable_name));

Aquí toString se utiliza para convertir un número entero en una cadena para mostrar texto.

+0

no responde la pregunta en absoluto ... el problema aquí es, obviamente, sobre id no se genera correctamente – Benjamin

Cuestiones relacionadas