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 :

Quelle est la méthode pour rafraichir une view ?


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2021
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2021
    Messages : 32
    Par défaut Quelle est la méthode pour rafraichir une view ?
    Bonjour,
    Ce code était prévu pour afficher une animation mais il n'en est rien, la vue s'affiche uniquement en fin d'animation.
    Quelle est donc cette méthode magique qui le permet ?

    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
     
                               int intervalX=params.x-xHorloge;
                               int stepx=-(intervalX/24);
                               for (int value = 0; value < 24; value = value + 1) {
                               params.x = xHorloge+value*stepx;
                               time = new SimpleDateFormat("HH:mm").format(Calendar.getInstance().getTime());
                               timeImage.setText(time);
                               mWindowManager.updateViewLayout(mTimeView, params);
                                   try {
                                       Thread.sleep(500);
                                   } catch (InterruptedException e) {
     
                                   }
     
                               }

  2. #2
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Va falloir donner un peu plus de contexte à ton code et ce que tu essai de faire.

    En théorie si tu as besoin de gérer le redessin d'une vue c'est que tu devrais déjà avoir un objet héritant de View qui te donne accès aux methodes onDraw() et invalidate() (entre autres)
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2021
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2021
    Messages : 32
    Par défaut
    Bonsoir,
    J'ai un texte que je peux afficher n'importe où à l'écran. C'est un texte affiché façon bulle de Facebook c'est à dire au dessus de toutes applications ouvertes y compris l'écran d'accueil.
    Je change sa position avec ce code ci:
    params.x = newX;
    mWindowManager.updateViewLayout(mTimeView, params);

    Mais si je fais une boucle [for] en faisant varier newX il ne se produit aucune animation.
    Si je simplifie le code, que dois je rajouter pour voir l'animation allez de 0 à 100 à l'ecran et non pas juste les positions zero et 100.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    params.x=0
     for (int value = 0; value <100; value = value + 1) {
             params.x = value;
             timeImage.setText("texte à promener ");
             mWindowManager.updateViewLayout(mTimeView, params);
                           //?????????
        try {
                                       Thread.sleep(500);
                                     } atch (InterruptedException e) {   }
                                                         }

  4. #4
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 693
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 693
    Par défaut
    Ca ne marche pas comme ca

    Si tu veux animer une view tu as des objets dédiés à cela : https://developer.android.com/traini...eposition-view
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2021
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2021
    Messages : 32
    Par défaut
    J'ai bien essayé mais objetanimtor déplace les objets à l'intérieur de la fenêtre flottante mais pas la fenêtre elle-même.
    Je n'ai pas trouvé sur internet pour ce cas particulier bien que la question a déjà été posée mais sans réponse.
    https://stackoverflow.com/questions/...ead#new-answer
    Merci de m'orienter vers un tuto ou une solution si il y en a une.

Discussions similaires

  1. Réponses: 12
    Dernier message: 03/11/2016, 12h22
  2. Réponses: 0
    Dernier message: 22/02/2013, 08h06
  3. Réponses: 9
    Dernier message: 19/06/2012, 13h56
  4. Réponses: 1
    Dernier message: 26/11/2006, 00h46

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