IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

[Parcelable] Attribut Drawable


Sujet :

Android

  1. #1
    Membre régulier

    Profil pro
    Laveur
    Inscrit en
    Avril 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Laveur

    Informations forums :
    Inscription : Avril 2004
    Messages : 142
    Points : 81
    Points
    81
    Par défaut [Parcelable] Attribut Drawable
    Bonjour,

    J'essai de faire passer un objet dans un Bundle avec une propriété de type Drawable mais une exception est levée :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    06-20 20:29:46.961: E/AndroidRuntime(1731): FATAL EXCEPTION: main
    06-20 20:29:46.961: E/AndroidRuntime(1731): java.lang.RuntimeException: Unable to start activity ComponentInfo{fr.test.android.appli/fr.test.android.appli.MainActivity}: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: 
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.ActivityThread.access$600(ActivityThread.java:141)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Handler.dispatchMessage(Handler.java:99)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Looper.loop(Looper.java:137)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.ActivityThread.main(ActivityThread.java:5039)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at java.lang.reflect.Method.invokeNative(Native Method)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at java.lang.reflect.Method.invoke(Method.java:511)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at dalvik.system.NativeStart.main(Native Method)
    06-20 20:29:46.961: E/AndroidRuntime(1731): Caused by: android.os.BadParcelableException: ClassNotFoundException when unmarshalling: 
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Parcel.readParcelable(Parcel.java:2077)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at fr.test.android.appli.rss.weather.ObjectWithDrawable.<init>(Weather.java:54)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at fr.test.android.appli.rss.weather.ObjectWithDrawable$1.createFromParcel(Weather.java:91)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at fr.test.android.appli.rss.weather.ObjectWithDrawable$1.createFromParcel(Weather.java:1)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Parcel.readParcelable(Parcel.java:2103)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Parcel.readValue(Parcel.java:1965)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Parcel.readMapInternal(Parcel.java:2226)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Bundle.unparcel(Bundle.java:223)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.os.Bundle.getParcelable(Bundle.java:1165)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at fr.test.android.appli.MainActivity.onCreate(MainActivity.java:83)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.Activity.performCreate(Activity.java:5104)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
    06-20 20:29:46.961: E/AndroidRuntime(1731): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
    Le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    public class ObjectWithDrawable implements Parcelable {
    ...
    public Drawable icon;
    ...
    public Weather(Parcel in){
    ...
            this.icon=in.readParcelable(Drawable.class.getClass().getClassLoader());
            ...
            }
     
    public void writeToParcel(Parcel dest, int flags) {
            ...
            Bitmap bitmap = (Bitmap) ((BitmapDrawable) icon).getBitmap();
            dest.writeParcelable(bitmap,flags);
    }
    }
    J'ai vu pas mal de sujet mais rien de concluant.

    Merci d'avance pour votre aide.

  2. #2
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Il doit manquer des trucs du logcat non ?
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  3. #3
    Membre régulier

    Profil pro
    Laveur
    Inscrit en
    Avril 2004
    Messages
    142
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Laveur

    Informations forums :
    Inscription : Avril 2004
    Messages : 142
    Points : 81
    Points
    81
    Par défaut
    Oui une bonne partie de la stack trace.

    J'ai tout recopié si ca peut aider.

    Merci

  4. #4
    Expert éminent

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Points : 7 618
    Points
    7 618
    Billets dans le blog
    3
    Par défaut
    Vu que dans la stack on ne passe jamais dans ObjectWithDrawable , c'est cette classe qui doit avoir du mal....

    On pourrait avoir l'ensemble de "ObjectWithDrawable" ?
    N'oubliez pas de cliquer sur mais aussi sur si un commentaire vous a été utile !
    Et surtout

  5. #5
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,

    Surtout pourquoi avoir le nom Weather pour le Parceable de ta classe ObjectWithDrawable ??

    Tu dois avoir le même nom puisque en fait tu lui propose un nouveau Constructeur.
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

Discussions similaires

  1. Ajout d'attribut à l'élément "Body"
    Par Tirlibibi dans le forum XMLRAD
    Réponses: 2
    Dernier message: 07/04/2003, 15h52
  2. Filtre d'affichage de balise selon leur attributs
    Par Norely dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 03/04/2003, 14h33
  3. Une fonction avec des attributs non obligatoires
    Par YanK dans le forum Langage
    Réponses: 5
    Dernier message: 15/11/2002, 13h39
  4. Lire un attribut dans un fichier XML en C++
    Par ti.k-nar dans le forum XML
    Réponses: 2
    Dernier message: 14/10/2002, 15h22
  5. comment changer d'attribut de fonte dans un Tlabel?
    Par sb dans le forum Composants VCL
    Réponses: 3
    Dernier message: 21/08/2002, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo