Comment dessiner du texte sur la toile?
je suis en train de développer une tarte simple diagramme de classe pour android. Pour l'instant, il peut prendre une carte d'étiquettes et les valeurs et tracer le graphique à secteurs. Je suis encore à ajouter les légendes de la tarte, qui est l'endroit où j'ai besoin de placer les textes près de petits rectangles sur le coin de l'écran. Toute aide appréciée, puisque je suis nouveau sur Android dev.
Vous devez vous connecter pour publier un commentaire.
Vous aurez à utiliser la drawText méthode de la classe Canvas.
Voici la documentation pertinente à ce sujet:
http://developer.android.com/reference/android/graphics/Canvas.html#drawText(java.lang.String, float, float, android.les graphiques.La peinture)
canvas.drawPaint(paint);
semble redondant ici. Vous aurez aussi probablement envie d'anti-aliasing (paint.setAntiAlias(true);
) et de la peinture de style (paint.setStyle(Paint.Style.FILL);
)Il y avait une autre réponse qui a été supprimé parce qu'il a un lien seulement. Le lien d'origine est ici. Le code est fondamentalement la même, mais j'ai pris les non texte dessin portions et aussi l'échelle des tailles pour mieux travailler sur écran moderne densités.
Cette montre juste quelques choses que vous pouvez faire avec le texte de dessin.
Voici le code mis à jour:
Autre chose que je veux essayer plus tard est le dessin du texte le long d'un chemin.
Voir aussi cette fuller réponse ici qui donne l'image suivante.
Un autre (peut-être meilleure) façon de dessiner du texte sur une toile est d'utiliser un
StaticLayout
. Cette poignées de texte multiligne en cas de besoin.La
TextPaint
etStaticLayout
ont été instancié droit avant d'être utilisé ici pour l'amour de l'illustration. Le faire dansonDraw
nuit aux performances, cependant. Voici un meilleur exemple leur montrant dans le contexte d'une vue personnalisée qui tire de son propre texte.