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 :

Passage de données "complexes" entre Activity


Sujet :

Android

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut Passage de données "complexes" entre Activity
    Bonjour,


    Je souhaiterais savoir s'il est possible de passer des données "complexes" entre deux Activity ?
    J'entends par complexe, des données dont le type n'est pas primaire comme un booléen ou du texte.
    Pour être exacte, il s'agirait de transmettre un BitMap et une WebView.


    Merci d'avance.

  2. #2
    Membre prolifique
    Avatar de Ryu2000
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2008
    Messages
    10 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2008
    Messages : 10 245
    Par défaut
    Pour Bitmap il ni a pas de problème puisque ça implements Parcelable.

    Si une classe implements Parcelable ou Serializable c'est bon.

    Passé un Bitmap ça ce fait, passer une webview c'est bizarre...
    J'ai pas compris pourquoi passer une webview à une autre Activity.

    Pour le bitmap ça devrait faire un truc comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    intent.putExtra("bitmap", bitmap);

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut
    Citation Envoyé par thierrybenji Voir le message
    Passé un Bitmap ça ce fait, passer une webview c'est bizarre...
    J'ai pas compris pourquoi passer une webview à une autre Activity.
    La première activity s'occuperait en fait de télécharger l'image et de "pré-charger" la WebView, puis dès que ces deux éléments sont prêts, je peux afficher l'image quelques temps dans la seconde activity, puis ensuite arrive la troisième activity avec la WebView déjà prête.

    Passer la WebView permettrait, je pense, de pouvoir d'éviter les chargements dans la troisième activity. Tout se ferait dans la première.

  4. #4
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Si tu as "juste" besoin d'une image et d'une webview, pourquoi ne pas plutôt faire une application en HTML 5 ?
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut
    Citation Envoyé par Hizin Voir le message
    Si tu as "juste" besoin d'une image et d'une webview, pourquoi ne pas plutôt faire une application en HTML 5 ?
    Parce que je n'ai pas "juste" besoin de ça ^^
    Je ne détaille pas tous les recoins de l'application pour éviter d'avoir trop d'informations superflus par rapport à la question initiale.

  6. #6
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    Ok.

    À mon avis, tu ne pourras pas pré-charger la webview à partir d'une autre activité que celle la gérant.

    A priori, il y a un hook pour l'événement onPageFinished dans le WebViewClient.
    Lien : https://groups.google.com/forum/?fro...rs/t-W45On3qQI
    Il se nommerait "onPageFinished".

    Documentation : http://developer.android.com/referen...lang.String%29

    Donc, si je ne me trompe pas avec ce que tu demandes :
    • télécharger en tâche de fond l'image
    • une fois l'image chargée, passer à la seconde activité en lui passant l'image
    • enfin, une fois la page finie de charger, faire disparaître l'image.


    Remarque : attention, si l'utilisateur ne s'attends pas à passer à une autre activité, cela va le déstabiliser.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  7. #7
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut
    Citation Envoyé par Hizin Voir le message
    Ok.

    À mon avis, tu ne pourras pas pré-charger la webview à partir d'une autre activité que celle la gérant.

    A priori, il y a un hook pour l'événement onPageFinished dans le WebViewClient.
    Lien : https://groups.google.com/forum/?fro...rs/t-W45On3qQI
    Il se nommerait "onPageFinished".

    Documentation : http://developer.android.com/referen...lang.String%29

    Donc, si je ne me trompe pas avec ce que tu demandes :
    • télécharger en tâche de fond l'image
    • une fois l'image chargée, passer à la seconde activité en lui passant l'image
    • enfin, une fois la page finie de charger, faire disparaître l'image.


    Remarque : attention, si l'utilisateur ne s'attends pas à passer à une autre activité, cela va le déstabiliser.
    Oui, j'utilise actuellement onPageFinished pour être notifié sur la fin du chargement.
    Du coup, il faudrait donc que la WebView soit dans la même activity que la première qui charge l'image et je peux cacher la WebView avec l'attribut visibilty à gone.

    C'est un peu comme ce que je fais actuellement, j'ai une seule activity et je cache/rend visible les éléments du layout "dans l'ordre". Ça fonctionne bien, mais je cherchais à voir s'il n'y avait pas une façon plus "élégante" pour faire ça.

  8. #8
    Modérateur
    Avatar de Hizin
    Homme Profil pro
    Développeur mobile
    Inscrit en
    Février 2010
    Messages
    2 180
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations professionnelles :
    Activité : Développeur mobile

    Informations forums :
    Inscription : Février 2010
    Messages : 2 180
    Par défaut
    À quoi te sert la webview (à part "afficher un site web" ) ?
    Est-elle obligatoire ? Peut-elle être remplacée par quelque chose de natif ?

    Un autre moyen que je vois, c'est de télécharger les pages en locale, et de les lire ensuite, mais je ne suis pas persuadé que ça sera plus joli, ou améliorera les choses.
    C'est Android, PAS Androïd, ou Androïde didiou !
    Le premier est un OS, le second est la mauvaise orthographe du troisième, un mot français désignant un robot à forme humaine.

    Membre du comité contre la phrase "ça marche PAS" en titre et/ou explication de problème.

    N'oubliez pas de consulter les FAQ Android et les cours et tutoriels Android

  9. #9
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2011
    Messages : 144
    Par défaut
    Je pense que je vais conserver mon idée de base alors, en jouant sur la visibilité des éléments. J'aurais quand même appris quelques petits trucs =)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Passage de données entre activities d'un Workflow
    Par Bluedeep dans le forum Windows Workflow Foundation
    Réponses: 5
    Dernier message: 12/11/2008, 22h37
  2. passage de données entre page
    Par flatron dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 27/01/2006, 13h50
  3. Passage de données entre deux pages
    Par spica92 dans le forum ASP
    Réponses: 2
    Dernier message: 08/09/2005, 14h38

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