确保Android上已加载嵌入字体资源

时间:2013-10-19 21:10:59

标签: java android fonts assets typeface

所以我的资源文件夹中有一个用于Android应用程序的字体文件。要将它加载到视图中,我就这样称呼它:

Typeface typeface = Typeface.createFromAsset(getActivity().getAssets(), "fonts/my-font.otf");
textView.setTypeface(typeface);

这很好用,但是在我测试的一台设备上它没有加载字体,并且在尝试设置这样的字体时它不会导致任何错误。我想知道是否有人知道检查字体文件是否已加载的方法?

值得一提的是我正在谈论的设备目前是运行cynanogen mod的Xperia Play。是否可能导致此问题的mod?我测试过的其他所有设备都没问题,但我只有一台运行CM的设备。

此外,最低SDK为14。

2 个答案:

答案 0 :(得分:1)

试试这个:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle     savedInstanceState) {
       View v = inflater.inflate(R.layout.fragment_layout, container, false);
       TextView txt = (TextView) v.findViewById(R.id.YourTextView);
       Typeface fontstyle = Typeface.createFromAsset(getActivity().getAssets(), "fonts/my-font.otf");
       txt.setTypeface(fontstyle); 
       return v;
}

答案 1 :(得分:0)

这可能有点晚了,但是尝试从你的otf文件名中删除“ - ”......“fonts / my-font.otf”应该是“fonts / my_font.otf”