android:无法设置自定义字体

时间:2014-04-30 11:25:01

标签: android fonts android-activity

我尝试在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

2 个答案:

答案 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:)