在android中的按钮中将不同的字体应用于文本

Sar*_*009 4 java android font-awesome

我正在创建一个重新加载的android按钮.它想要在按钮中同时包含图标和文本,所以我使用的是fontawesome.但是如何在按钮文本上同时应用我在我的应用程序中使用的fontawesome字体和自定义字体.

Sar*_*009 8

这就是我如何实现它并使用来自/sf/answers/751881301/的 CustomTypefaceSpan类

public class MainActivity extends Activity {

    Typeface tf_r, tf_icon;
    Button reload;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        int hexVal = Integer.parseInt("f021", 16);
        SpannableStringBuilder SS = new SpannableStringBuilder((char)hexVal + " Refresh");

        tf_r = Typeface.createFromAsset(this.getAssets(), "www/fonts/Roboto-Light.ttf");
        tf_icon = Typeface.createFromAsset(this.getAssets(), "www/fonts/fontawesome-webfont.ttf");

        SS.setSpan(new CustomTypefaceSpan("", tf_icon), 0, 1,Spanned.SPAN_EXCLUSIVE_INCLUSIVE);
        SS.setSpan(new CustomTypefaceSpan("", tf_r), 1, 9,Spanned.SPAN_EXCLUSIVE_INCLUSIVE);

        reload = (Button) findViewById(R.id.no_openings_reload);
        reload.setText(SS);
    }
}
Run Code Online (Sandbox Code Playgroud)