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

Composants graphiques Android Discussion :

Centrer TextView via Html


Sujet :

Composants graphiques Android

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 86
    Points : 67
    Points
    67
    Par défaut Centrer TextView via Html
    Bonjour j'ai un textView où j'ecris du texte avec different format et couleur; pour cela j'utilise HTML j'utilise parexemple le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    String text = "<font color=#cc0029>User.Nom</font> <font color=#ffcc00>User.Prenom</font>";
    txtComment.setText(Html.fromHtml(text));
    Mes font s'affiche comme je veux sauf quand j'ajoute un "center"... autrement dit une partie du text doit avoir les font defini et être centré au screen. Avez-vous unr idée sur comment le centrer tout en gardant mes font html (la balise Html ne marche pas )

    Merci par avance pour vos idées

  2. #2
    Membre régulier
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Février 2013
    Messages
    53
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : Norvège

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2013
    Messages : 53
    Points : 78
    Points
    78
    Par défaut
    essai ca


    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
     
    String desiredContent = "my test html";
                String strBody = "<html>"
                    + "<head>"
                    + "     <style type=\"text/css\">"
                    + "     @font-face "
                    + "         {   font-family: Tahoma;"
                    + "             src:url(\"~/android_asset/fonts/MyriadPro-Regular.otf\") "
                    + "         }"
                    + "     #text"
                    + "         {   font-family: Tahoma;"
                    + "             font-size:14;"
                    + "             text-align: center;"
                    + "         }"
                    + "     </style>"
                    + ""
                    + "</head>"
                    + "<body dir=\"rtl\" id=\"text\">"
                    + desiredContent 
                    + " </body></html>  ";
     
            myWebView.loadDataWithBaseURL(null, strBody, "text/html", "utf-8",
                    null);

  3. #3
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    C'est à faire en Java, pas en HTML selon moi (à réserver pour tout ce qui touche aux fontes).
    Un txtComment.setGravity(Gravity.CENTER); devrait faire l'affaire.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  4. #4
    Membre éclairé
    Avatar de LeBzul
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 381
    Points : 832
    Points
    832
    Par défaut
    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
    String desiredContent = "my test html";
                String strBody = "<html>"
                    + "<head>"
                    + "     <style type=\"text/css\">"
                    + "     @font-face "
                    + "         {   font-family: Tahoma;"
                    + "             src:url(\"~/android_asset/fonts/MyriadPro-Regular.otf\") "
                    + "         }"
                    + "     #text"
                    + "         {   font-family: Tahoma;"
                    + "             font-size:14;"
                    + "             text-align: center;"
                    + "         }"
                    + "     </style>"
                    + ""
                    + "</head>"
                    + "<body dir=\"rtl\" id=\"text\">"
                    + desiredContent 
                    + " </body></html>  ";
    Pour info, il vaut mieux utiliser un StringBuffer plutôt que de faire de l'addition de String "à grande échelle".

    Pour l'opération :
    string1 = "aaa"+"bbb"+"ccc"+"ddd";

    Il va y avoir un String de créer pour string1, logique.
    Mais aussi String pour aaa, bbb , ccc. A cela s'ajoute maintenant un String pour aaa+bbb, un pour "aaabbb"+ccc et encore un pour "aaabbbccc"+ddd.

    Pour éviter la création de String causé par l'addition, il faut passer par un StringBuffer ce qui améliore largement les perf :
    string1 = new StringBuffer().append("aaa").append("bbb").append("ccc").append("ddd");
    Le petit avantage de plus (qui n'est pas utile ici), c'est qu'on peut ajouter des int / float / .. ect dans la methode append sans cast.
    "Quand la lune n'est pas là, la nuit mène une existence obscure"

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2014
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2014
    Messages : 86
    Points : 67
    Points
    67
    Par défaut
    Merci pour vos reponses,

    Hephaistos007 merci de ta reponse mais je pense que utilisé la gravity va centré le textView lui même cest-a-dire tout le contenu va être changer; j'utilise
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    txtComment.setText(Html.fromHtml(text));
    parceque le contenu de mon textView est formaté selon d'autre parametre..la ligne 1 peut être jaune et aligné à droite la ligne 3 vert et centré.... et selon ma modilisation je ne peut pas utilisé 1 texview pour chaque ligne ca combliquerai d'autres dependance...
    Merci andronull et Lbzul je vais tester vos propositions

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/06/2007, 09h15
  2. [MySQL] Envoi multiple via html/php
    Par jim1 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 10/05/2007, 08h43
  3. [Web] modifier un fichier xml via HTML
    Par cyberfilou dans le forum APIs
    Réponses: 2
    Dernier message: 04/05/2007, 11h12
  4. [Upload] Problème Upload Fichiers via html
    Par Typhon dans le forum Langage
    Réponses: 3
    Dernier message: 11/02/2007, 11h52
  5. [Forms]se connecter au forms via html
    Par al_mer dans le forum Forms
    Réponses: 1
    Dernier message: 16/10/2006, 09h31

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