60 votes

Android: java.lang.ClassCastException: android.widget de.imageView ne peut pas être lancé pour android.widget de.textView

Je ne peux pas résoudre ce problème sur mon listview modèle: j'ai l'erreur comme dans le titre de mon post, mais je ne jette pas imageview à textview. Voici mon code:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="200dip"
android:layout_weight="1"
android:paddingBottom="10dip" >

<TextView
    android:id="@+id/mq"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentRight="true"
    android:text="Metri quadri"
    android:textColor="#33b5e5"
    android:textSize="14sp"
    android:textStyle="bold" />

<TextView
    android:id="@+id/citta"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/mq"
    android:layout_alignBottom="@+id/mq"
    android:layout_centerHorizontal="true"
    android:text="Citta"
    android:textColor="#33b5e5"
    android:textSize="14sp"
    android:textStyle="bold" />

<TextView
    android:id="@+id/prezzo"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:text="Prezzo"
    android:textColor="#e1e1e1"
    android:textSize="14sp"
    android:textStyle="bold" />

<TextView
    android:id="@+id/nome"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_alignParentTop="true"
    android:padding="5dip"
    android:scrollHorizontally="true"
    android:singleLine="true"
    android:text="@string/testolungo"
    android:textColor="#e1e1e1"
    android:textSize="20sp"
    android:textStyle="bold" />

<ImageView
    android:id="@+id/foto"
    android:layout_width="80dip"
    android:layout_height="60dip"
    android:layout_alignParentLeft="true"
    android:layout_centerVertical="true"
    android:contentDescription="Release"
    android:padding="5dip"
    android:scaleType="centerCrop"
    android:src="@drawable/stub" />

<TextView
    android:id="@+id/descsplash"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_centerVertical="true"
    android:text="Small Text"
    android:textSize="16sp"
    android:textStyle="italic" />

</RelativeLayout>

L'erreur pour le code java est sur la ligne 58 de mon fichier, où je attribuer le TextView id pour TextView mq:

    View vi=convertView;
    if(convertView==null)
    vi = inflater.inflate(R.layout.listlay, null);
    TextView nome=(TextView)vi.findViewById(R.id.nome);
    TextView mq=(TextView)vi.findViewById(R.id.mq); // here's the error (???)
    TextView citta=(TextView)vi.findViewById(R.id.citta);
    TextView prezzo=(TextView)vi.findViewById(R.id.prezzo);
    ImageView image=(ImageView)vi.findViewById(R.id.foto);
    TextView descrizione = (TextView)vi.findViewById(R.id.descsplash);
    nome.setText(data.get(position).getNome());
    mq.setText(data.get(position).getMetriQuadri());
    citta.setText(data.get(position).getCitta());
    prezzo.setText(data.get(position).getPrezzo());
    descrizione.setText(data.get(position).getDescrizione());
    imageLoader.DisplayImage(data.get(position).getForoUrl(), image);

Et voici le logcat:

06-25 16:08:32.497: D/Debug(14642): Prendo Textview MQ
06-25 16:08:32.497: D/AndroidRuntime(14642): l'Arrêt de la VM
06-25 16:08:32.497: W/dalvikvm(14642): threadid=1: thread sortir avec uncaught exception (groupe=0x40a561f8)
06-25 16:08:32.497: E/AndroidRuntime(14642): FATAL EXCEPTION: les principales
06-25 16:08:32.497: E/AndroidRuntime(14642): java.lang.ClassCastException: android.widget de.ImageView ne peut pas être lancé pour android.widget de.TextView
06-25 16:08:32.497: E/AndroidRuntime(14642): au com.prova.listview.LazyAdapter.getView(LazyAdapter.java:58)

Personne ne sait comment je peux résoudre ce problème?

180voto

Benito Bertoli Points 9458

Eclipse a tendance à gâcher vos ressources chaque maintenant et puis. Cela conduit à des comportements inhabituels tels que des chaînes et des images échangées sur votre application, et plus généralement classCastException(s), qui surviennent lors de l'Éclipse commutateurs de votre point de Vue' id autour de.

Quelques solutions à ce problème:

Le nettoyage de votre projet.

Modifier un fichier xml fichier de mise en page et l'enregistrer.

Supprimer votre R fichier. (Ne vous inquiétez pas, il sera automatiquement généré à nouveau).

En fait tout ce qui permet à votre projet de reconstruction et de re-générer le R de fichier.

4voto

Aissa Ghouti Points 46

Juste nettoyer votre projet et tout ira bien.

2voto

touchchandra Points 174

Au départ, j'étais à avoir d'erreur,

TextView : android:id="@+id/add_expected_seekbarvalue"

SeekBar : android:id="@+id/add_expected_seekbar"

Comme un correctif, j'ai renommé l'id de textview comme

TextView : android:id="@+id/add_expected_valueseekbar"

Même nettoyer et à d'autres techniques ne fonctionne pas, mais enfin renommer l'id a travaillé comme un charme.

1voto

Rohit Points 1487

Certaines fois, ce problème montre parce que nous avons créé ImageView Mais Exprimées avec le Bouton Image comme ceci

 <ImageView
        android:id="@+id/iv_thumb"
        android:layout_width="50dip"
        android:layout_height="50dip"
        />

  holder.imageView = (ImageButton) convertView.findViewById(R.id.iv_thumb);

nous avons déclaré Imageview le cast de ImageButton, pour cette raison également confrontés à ce problème.

0voto

user3901630 Points 1

juste nettoyer votre projet... J'ai également passé par le même problème.. après nettoyage de projet tout ira bien..bonne chance

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X