尝试将自定义字体设置为按钮时出现以下异常:java.lang.RuntimeException: native typeface cannot be made
我已经看过类似的问题,但没有一个解决方案有效。
我的字体在src / main里面,文件结构似乎很好。
这是文件结构:
以下是代码:
private void generateButtonListener(final Button btn,final String inputText) {
btn.setTypeface(Typeface.createFromAsset(getAssets(), "rb.ttf"));
btn.setOnClickListener(new android.view.View.OnClickListener() {
public void onClick(View view1) {
getCurrentInputConnection().commitText(inputText,1);
}
});
}
不确定是否重要,但我正在制作自定义键盘应用,因此我在onCreateInputView
方法的按钮上设置此侦听器。像这样:
@Override
public View onCreateInputView() {
LayoutInflater lInflate = getLayoutInflater();
Resources res = getResources();
LinearLayout inputView = (LinearLayout) lInflate.inflate(R.layout.copypasta, null);
Button tab_navySeal = (Button) inputView.findViewById(R.id.tab_navySeal);
Button nSeal_1 = (Button) btnset_navyseal.findViewById(R.id.nSeal_1);
generateButtonListener(nSeal_1, res.getString(R.string.NStxt));
等...
我似乎遵循了字体的所有规则,问题是什么?
答案 0 :(得分:1)
您是将字体用作库还是
btn.setTypeface(Typeface.createFromAsset(getAssets(), "rb.ttf"));
rb.ttf
是道路吗?尝试fonts/rb.ttf