我尝试在TextView中设置自定义字体。
因此我将otf文件复制到/src/main/assets/fonts
并将以下部分添加到活动中的onCreate:
TextView tv = (TextView) findViewById(R.id.profil_fullname);
Typeface tf = Typeface.createFromAsset(getAssets(), "fonts/MavenProLight-100.otf");
tv.setTypeface(tf);
但它不起作用。我没有错误,应用程序工作,但字体不是预期的。我是否必须将资产文件夹添加到build.gradle?!
EDIT1:
我将fontname更改为MavenProLight.tff(我还将其转换为truetype字体)。此外,我将其移至src/main/assets
并再次建造。到目前为止没有任何改变,Logcat不包含任何特定问题警告或调试信息。
EDIT2: 我发现了问题!我将设计用作片段中的布局。因此,活动的onCreate永远不会被调用。请查看此页面以获取更多信息:Set custom font for Android fragments
答案 0 :(得分:1)
请删除资产文件夹的文件夹字体子文件夹 并重命名mavenProLight.otf而不是MavenProLight-100.otf。试试这个。
TextView tv = (TextView) findViewById(R.id.profil_fullname);
Typeface tf = Typeface.createFromAsset(getAssets(), "mavenProLight.otf");
tv.setTypeface(tf);
可能100%完成工作。祝你好运!
答案 1 :(得分:1)
问题在于您的路径/ src / main / assets / fonts。将字体放在assets / fonts文件夹中,它将是wrk:)