Je ne peux pas résoudre ce problème sur mon modèle Listview: j'ai l'erreur comme dans le titre de mon message, mais je ne vais pas convertir imageview en 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 à la ligne 58 de mon fichier, où j'attribue l'identifiant TextView à 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): arrêt de la machine virtuelle
06-25 16: 08: 32.497: W/dalvikvm (14642): ID_fil = 1: thread sortant avec une exception non capturée (groupe = 0x40a561f8)
06-25 16: 08: 32.497: E/AndroidRuntime (14642): EXCEPTION FATALE: principale
06-25 16: 08: 32.497: E/AndroidRuntime (14642): exception Java.lang.ClassCastExast: Android.widget.ImageView ne peut pas être converti en android.widget.TextView
06-25 16: 08: 32.497: E/AndroidRuntime (14642): à l'adresse com.prova.listview.LazyAdapter.getView (LazyAdapter.Java:58)
Est-ce que quelqu'un sait comment je peux résoudre ce problème?
Eclipse a tendance à gâcher vos ressources de temps en temps… .. Cela entraîne certains comportements étranges, tels que des chaînes et des images échangées partout dans votre application, et plus généralement des exceptions classCastException (s), qui se produisent lorsque Eclipse modifie l'identifiant de vos vues autour.
Quelques solutions à ce problème:
Nettoyez votre projet.
Modifiez un fichier de mise en page XML et enregistrez.
Supprimez votre fichier R. (Ne vous inquiétez pas, il sera automatiquement généré à nouveau).
Fondamentalement, tout ce qui fait que votre projet reconstruit et régénère le fichier R.
Il suffit de nettoyer votre projet et tout ira bien.
Parfois, ce problème est dû au fait que nous avons créé ImageView But Cast avec le bouton Image comme suit.
<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, mais avons converti en ImageButton, pour cette raison, avons également faire face à ce problème.
Au début, j'avais une erreur:
TextView : Android:id="@+id/add_expected_seekbarvalue"
SeekBar : Android:id="@+id/add_expected_seekbar"
En guise de solution, j’ai renommé id
pour TextView
en
TextView : Android:id="@+id/add_expected_valueseekbar"
Même le nettoyage et d'autres techniques ne fonctionne pas, mais finalement renommer l'ID a fonctionné comme un charme.
pour Développement Visual Studio Xamarin.Android
Comme mentionné par de nombreuses personnes, Nettoyage le projet a fonctionné pour moi sous Visual Studio Pour mon application Xamarin.Forms, cela s’est produit après avoir enregistré les modifications avec une nouvelle référence de bibliothèque.
Nettoyez votre projet.
Fondamentalement, tout ce qui fait que votre projet reconstruit et régénère le fichier Rosource.Designer.cs. (Burrowed de Benito Bertoli)
il suffit de nettoyer votre projet ... J'ai également rencontré le même problème
Peut-être avez-vous une vue d'image dans votre fichier .xml et un bouton qui génère et attribue de manière dynamique un identifiant dans votre code Java et ces deux personnes obtiennent un identifiant identique de manière aléatoire; que vous avez donné dans votre code et tout ira bien.