我在TextClocks
中有两个Toolbar
:
<androidx.appcompat.widget.Toolbar
style="@style/Toolbar"
android:id="@+id/action_bar"
android:layout_width="match_parent"
android:layout_height="80px"
android:elevation="4dp"
android:gravity="center_vertical"
android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"
app:layout_constraintStart_toStartOf="parent" app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintHorizontal_bias="1.0">
<LinearLayout
android:id="@+id/time_container"
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="right"
android:layout_marginRight="24px">
<TextClock
android:id="@+id/date"
android:format12Hour="EEEE, d MMM yyyy"
android:format24Hour="EEEE, d MMM yyyy"
android:layout_width="wrap_content"
android:textAppearance="@style/Toolbar"
android:layout_height="0dp"
android:layout_gravity="right|center_vertical"
android:layout_weight="1"/>
<TextClock
android:id="@+id/time"
android:layout_width="wrap_content"
android:textAppearance="@style/Toolbar"
android:layout_gravity="right|center_vertical"
android:layout_height="0dp"
android:layout_weight="1"/>
</LinearLayout>
我给了他们两个在styles.xml中定义的样式“工具栏”,如下所示:
<style name="Toolbar" >
<item name="android:fontFamily">@font/greycliff_cf_bold</item>
<item name="android:background">@color/toolbars</item>
<item name="android:textColor">@color/navBarText</item>
<item name="android:textSize">20px</item>
</style>
但是,当TextClocks采用样式的颜色时,它们并未采用指定的字体。项目中的其他视图也具有该字体并按应显示的方式显示。发生什么事了?
答案 0 :(得分:0)
我终于找到了一种以编程方式进行设置的方法:
private lateinit var timeClock:TextClock
timeClock=findViewById(R.id.time_text_clock)
val typeface = ResourcesCompat.getFont(Context,R.font.font_name)
timeClock.typeface = typeface