我自己有一个工具栏,我想要一个自定义字体作为我的标题,但我不能让它工作。
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
SpannableString title = new SpannableString(getResources().getString(R.string.app_name));
title.setSpan(Typeface.createFromAsset(getAssets(), "KeepCalm-Medium.ttf"), 0, title.length(),
Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
toolbar.setTitle(title);
setSupportActionBar(toolbar);
我认为我做得对,但没有做任何事情。
答案 0 :(得分:12)
您可以使用TextView
内的Toolbar
来完成此操作。 Toolbar
只是ViewGroup
:
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_height="wrap_content"
android:layout_width="match_parent">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="Toolbar Title"
android:layout_gravity="center"
android:id="@+id/toolbar_title" />
</android.support.v7.widget.Toolbar>
然后以编程方式获取它:
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
TextView toolbarTitle = (TextView) toolbar.findViewById(R.id.toolbar_title);
Typeface myTypeface = Typeface.createFromAsset(getAssets(), "KeepCalm-Medium.ttf");
toolbarTitle.setTypeface(myTypeface);