0

Androidの実行時にフォントを変更したり、2つのフォントファイルを結合したりする方法はありますか? フォントに文字サポートをもう 1 つ追加する必要があります。

文字がフォントファイルに存在しない場合、デバイスはその文字を四角で表示するためです。

4

1 に答える 1

1

どのキャラクターが問題を引き起こしているのかがわかっている場合は、これを試してみてください。

  1. それらの文字の位置を見つけ、それらをi、j、k(など)とし、Nを完全な文字列のサイズとします。
  2. 次に、次のようなことを行います。

    String yourString = "Some Text Here"; // this is you string
    Spannable spannable = new SpannableString(yourString);
    // you can also iterate, instead of next few steps
    // typeface1 and typeface2 are your two different font styles
    spannable.setSpan(typeface1, 0, i-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    spannable.setSpan(typeface2, i, i+1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    spannable.setSpan(typeface1, i+1, j-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    spannable.setSpan(typeface2, j, j+1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    spannable.setSpan(typeface1, j+1, k-1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
    spannable.setSpan(typeface2, k, k+1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); // and so on
    spannable.setSpan(typeface1, k+1, N, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE); 
    textview1.setText(spannable); // this is your textview and setting of font
    

または、カスタム書体を作成して、必要なビューに適用することもできます。その点で、処理できない文字を除くすべての文字に最初のフォントを適用できます。それらのために、あなたは2番目のものを適用することができます。それがどれほど実行可能かはわかりません。試してみてお知らせします。

これが役立つかどうかを確認してください。

于 2012-10-15T07:40:54.470 に答える