UIWebView et taille du texte
Salut,
Je récupère du texte HTML dans une appli iPhone (donc formatté en HTML avec plein de caractères encodés).
Lorsqu'il est affiché dans une webView, il est tout petit par défaut (comme un site pas adapté pour l'iPhone). Logique.
Si je charge le texte dans une UITextView, je me retrouve évidemment avec tous les caractères indésirables.
Quelle est la meilleure façon de procéder pour avoir du texte formatté "de taille correcte" ?
Faut-il développer une version mobile du site obligatoirement ?
Je récupère du texte HTML dans une appli iPhone (donc formatté en HTML avec plein de caractères encodés).
Lorsqu'il est affiché dans une webView, il est tout petit par défaut (comme un site pas adapté pour l'iPhone). Logique.
Si je charge le texte dans une UITextView, je me retrouve évidemment avec tous les caractères indésirables.
Quelle est la meilleure façon de procéder pour avoir du texte formatté "de taille correcte" ?
Faut-il développer une version mobile du site obligatoirement ?
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Lorsque tu affiche du HTML dans une UIWebView, tu peux fixer la taille de ta page HTML pour que celle-ci s'affiche en taille normale dans ton application et non la page entière comme Safari Mobile.
Pour cela dans le header de ton fichier HTML ajoute la balise suivante :
<meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1">
Le minimum-scale empèche ton application de diminuer la taille de ta page.
Le maximum-scale permet de régler le niveau de zoom si tu souhaites laisser la possibilité à l'utilisateur de zommer dans la UIWebView.
Pour la seconde question, je n'ai pas encore utilisé UITextView, donc je ne peux pas t'aider pour l'instant.
Pour l'instant, c'est écrit comme ça (cf capture), et je trouve cela un peu petit :
Par exemple si je regarde la balise <description> du flux RSS d'osx-dev, je vois que c'est du HTML, certes, mais la racine du HTML est un <div>, contenant d'autre texte HTML... en tout cas c'est loin d'être formatté comme une page <html><body>...</body></html>
Et c'est là tout ton problème à mon avis. Puisque ton code source HTML que tu fournis à ta UIWebView n'est pas une vraie page HTML, il faut un peu comme bon lui semble.
Pour résoudre le problème, c'est pas bien compliqué, il suffit de wrapper ton extrait de code HTML (issu de la balise <description> de ton RSS typiquement) dans du vrai HTML, genre Bon je te laisse composer le vrai source, mais en plus avec ça tu peux rajouter du CSS dans ton <head> pour rajouter de la mise en forme personnalisée, genre grossir le corps de police par défaut par exemple... Sans pour autant avoir de traitement particulier à faire sur ta chaà®ne extraitHTML issue elle du RSS et que tu n'as pas à modifier du coup, juste à l'enrober.
Il suffit de l'enrober effectivement !