22

アプリケーション全体で Helvetica フォントを使用しています。現在、アセットとは別にフォントを作成しています。だから私はこの3つを言いました

HelveticaNeue = Typeface.createFromAsset(application.getAssets(), "fonts/HelveticaNeue.ttf");
HelveticaNeueBold = Typeface.createFromAsset(application.getAssets(), "fonts/HelveticaNeueBold.ttf");
HelveticaNeueBoldItalic = Typeface.createFromAsset(application.getAssets(), "fonts/HelveticaNeueBoldItalic.ttf");

1 つの TextView に対して 1 つの書体を使用すると、すべてがうまく機能します。ただし、スパン可能なものを使用する必要があります

Spannable WordtoSpan = new SpannableString("This text should be normal, but this needs to be bold, and normal");    
WordtoSpan.setSpan(new TypefaceSpan("bold"), 5, 7, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);

そして、文字列の一部を HeleveticaNeueBold にし、一部を HelveticaNeue にしたいと考えています。必要なのは、上記の 3 つのフォントが実際に関連していることを Android に示して、適切に切り替えられるようにすることだと思います。これを行う他の方法も探しています。

4

2 に答える 2

20

カスタム TypefaceSpan を書きたいと思うでしょう。良いニュースは、それらが難しくないことです。例については、こちらを参照してください。

于 2012-05-04T14:22:53.647 に答える