2017-09-09 6 views
0

lors du lancement de cette activité que je reçois cette erreur maladroitejava.lang.ClassCastException: com.example.kada.view.pzv.PullToZoomScrollViewEx ne peut pas être jeté à com.example.kada.view.pzv.PullToZoomListViewEx

java.lang.ClassCastException: com.example.com.kada.view.pzv.PullToZoomScrollViewEx ne peut pas être jeté à com.example.com.kada.view.pzv.PullToZoomListViewEx

mon activité (ZoomActivity)

package com.example.com.kada; 

import android.os.Bundle; 
import android.support.design.widget.FloatingActionButton; 
import android.support.design.widget.Snackbar; 
import android.support.v7.app.AppCompatActivity; 
import android.support.v7.widget.Toolbar; 
import android.view.View; 
import android.widget.ListView; 

import com.example.com.kada.adhss.PullToZoomScrollViewEx; 
import com.example.com.kada.view.pzv.PullToZoomListViewEx; 


public class ZoomActivity extends AppCompatActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_zoom); 
     Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
     setSupportActionBar(toolbar); 


     PullToZoomListViewEx listView = (PullToZoomListViewEx) findViewById(R.id.paralax_social_list_view); 
     listView.setShowDividers(0); 

     // PullToZoomListViewEx listView = (PullToZoomListViewEx) findViewById(R.id.paralax_social_list_view); 
     // listView.setShowDividers(0); 

    } 

} 

la mise en page

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    xmlns:app="http://schemas.android.com/apk/res-auto" 
    android:id="@+id/activity_blog_list" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    android:background="@color/hss_background" 
    tools:context="com.example.kada.blogListActivity"> 


    <com.example.kada.view.pzv.PullToZoomScrollViewEx 
     android:id="@+id/paralax_social_list_view" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:divider="@android:color/transparent" 
     app:headerView="@layout/header_parallax_social" /> 




</RelativeLayout> 

Comment résoudre ce problème malgré je suis mis le même code dans un autre projet qui servent la dépendance com.android.support:support-v4:21.0.3 et il semble bien

et maintenant je suis en utilisant com.android.support:appcompat-v7:25.3.1

Répondre

1

com.example.com.kada.view.pzv.PullToZoomScrollViewEx n'est pas une sous-classe de com.example.com.kada.view.pzv.PullToZoomListViewEx donc il ne peut pas être casté. C'est ce que le message d'exception essaie clairement de vous dire.

Votre mise en page utilise PullToZoomScrollViewEx mais vous lancez ce que findViewById() renvoie à PullToZoomListViewEx. Corrigez la distribution pour utiliser la classe correcte ou assurez-vous que la classe a les mêmes ancêtres.

De même, si vous passez à l'utilisation, utilisez le SDK 26 pour compiler, voir Android O casting to findViewById not needed anymore?, mais cette exception lèvera quand même l'exception si vous utilisez des classes incorrectes.

+0

Merci beaucoup ** vous économisez ma journée ** et ne me blâmez pas de cette erreur de base –

+0

Je ne vous blâme pas. Je réponds à votre demande d'aide en soulignant les erreurs que vous avez été incapable de vous repérer, ce qui était la principale raison pour laquelle vous avez demandé. J'espère que vous devriez savoir comment interpréter le message d'exception et qu'il vaut la peine de le lire attentivement en premier lieu :) –