2011-02-04 7 views
5

nuevo en Android. Me sale el siguiente mensaje en la perspectiva depurador:Mensaje de error: el archivo adjunto fuente no contiene el origen del archivo ListView.class

El accesorio de origen no contiene la fuente de los archivos ListView.class Puede cambiar el archivo adjunto origen haciendo clic en el cambio Fuente adjunta a continuación

Huelga decir que la errores de la aplicación He intentado cambiar el accesorio de origen a la ruta de ubicación:

C:/Archivos de programa/Android no/android-sdk-windows/plataformas/android-8/android.jar

Sin embargo, esto no hizo trabajo.

Cualquier idea sería muy apreciada.

Código es:

import android.app.ListActivity; 
import android.os.Bundle; 
import android.view.*; 
import android.widget.*; 


public class HelloListView extends ListActivity 
{ 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     setListAdapter(new ArrayAdapter<String>(this, R.layout.main, COUNTRIES)); 

     ListView lv = getListView(); 
     lv.setTextFilterEnabled(true); 

    lv.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
     public void onItemClick(AdapterView<?> parent, View view, 
      int position, long id) { 
      // When clicked, show a toast with the TextView text 
      Toast.makeText(getApplicationContext(), ((TextView) view).getText(), 
       Toast.LENGTH_SHORT).show(); 
     } 
     }); 
    } 


    static final String[] COUNTRIES = new String[] { 
     "Afghanistan", "Albania", "Algeria", "American Samoa... 

Gracias!

+0

Asegúrese de agregar su actividad al manifiesto.

Respuesta

4

The source attachment does not contain the source for the file ListView.class

hace falta decir que los errores de aplicaciones.

El depurador simplemente dice que el marco de la pila actualmente resaltado en el depurador está en la clase ListView y no tiene el código fuente para poder hacerlo en el editor. Esto ciertamente no es la causa de cualquier problema que tenga con su programa. Si encuentra la pila que corresponde a su código fuente, el depurador le mostrará con alegría el código correspondiente al marco de la pila. Puede tomarse la molestia de instalar el código fuente de Android, pero no resolverá ningún problema que tenga con su programa.

Aclare qué está haciendo mal su programa: cuáles son los síntomas distintos de ese mensaje. Busque en LogCat los mensajes de error, las excepciones y los rastros de pila y publíquelos.

2

Si tuviera la fuente, solo le permitiría entrar en la fuente de las clases del sistema operativo, lo que probablemente lo confundiría. Para ver cuál es su causa cuando se detiene en el depurador, siga presionando F6 hasta que las variables en la perspectiva de depuración le muestren la excepción. Será algo así como:

este InvocationTargetException (id = ????????)
excepción IllegalStateException (id = ????????)
causa ClassCastException (id = ?? ??????)
detailMessage "ArrayAdapter requiere el ID de recurso a ser un TextView" (id = ????????)

porque he hecho este tutorial en el pasado y sabe que la línea:

setListAdapter(new ArrayAdapter<String>(this, R.layout.main, COUNTRIES)); 

debería ser

setListAdapter(new ArrayAdapter<String>(this, R.layout.list_item, COUNTRIES)); 

Esa es la causa

2

Este mensaje de error se muestra cuando la ruta de origen no está configurado correctamente.Si es Eclipse, haga clic en Cambiar adjuntar el botón de origen que se muestra debajo del mensaje de error, y proporcione la ruta de origen (por ejemplo, C:/Archivos de programa/Java/jdk1.6.0_24/src.zip).

O

Ir al proyecto> Propiedades> Vía de construcción Java> Bibliotecas Expand System Library JRE. Expanda rt.jar. Seleccione el archivo adjunto Fuente y haga doble clic o Editar. Escriba la ruta del archivo de código fuente (Archivo externo ...) y presione OK.

Referencia: http://android.okhelp.cz/class-file-editor-source-not-found-change-attached-source-eclipse/

Cuestiones relacionadas