我读了这页https://developer.android.com/preview/features/fonts-in-xml.html textview没问题,但是textclock不起作用。
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.hellokai.myapplication.MainActivity">
<TextClock
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="@font/oswald_stencbab"
android:format12Hour="hh:mm"
android:format24Hour="hh:mm"
android:textSize="60dp"
android:text="hello"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:textSize="60dp"
android:text="@string/app_name"
android:fontFamily="@font/oswald_stencbab"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</android.support.constraint.ConstraintLayout>
如何让TextClock像TextView一样工作?
我在一个小部件中编写TextClock,remoteview无法获取TextClock实例。我将更改TextClock字体,但我不知道如何更改它。
希望有人能帮助我解决这个问题。
答案 0 :(得分:0)
我将我的字体保存在assets / fonts文件夹中。然后我做了以下事情。
Typeface typeFaceBlack = Typeface.createFromAsset(context.getAssets(), "fonts/Font.otf");
textClockID.setTypeface(typeFaceBlack);
答案 1 :(得分:0)
您需要创建自己的自定义时钟,而不是使用内置的textclock。
为此:
const allComputedValues$ = array$.pipe(
scan(
(acc, crtArr) => {
// with these we 'automatically' remove the current items(from `acc`) whose ids are not in the current array
const newIds = {};
const newValues = {};
crtArr.forEach(crt => {
const { id: currentId, value: crtValue } = crt;
// if new or edited
if (!acc.ids[currentId] || acc.values[currentId] !== crtValue) {
newIds[currentId] = true;
newValues[currentId] = veryExpensiveCalc(crtValue);
}
});
return { ids: newIds, values: newValues };
},
{ ids: {}, values: {} },
),
)
然后获取小时和分钟:
import java.util.Calendar;
最后在两个单独的TextView上同时设置小时和分钟,然后应用字体