我想在android中使用SharedPreferences存储Typeface。它在模拟器(android 4.4.2)中工作正常,但是当我在设备(4.2.2和4.3.2)中启动应用程序时它会崩溃。请帮我。谢谢,
从SharedPreferences获取。
SharedPreferences fontSP = getActivity().getSharedPreferences("PREFSFONT", Activity.MODE_PRIVATE);
fontStyle = Typeface.createFromAsset(getActivity().getAssets(),fontSP.getString("fontValue", ""+SettingsABC.getTypeface(fontStyle)));
保存到sharedPreferences
SharedPreferences fontSP = getActivity().getSharedPreferences("PREFSFONT", Activity.MODE_PRIVATE);
SharedPreferences.Editor bgEditor = fontSP.edit();
bgEditor.putString("fontValue", "boomerang.ttf");
bgEditor.commit();
错误是这样的:
无法制作字体
fontStyle
可能是你的null
中的SettingsABC.getTypeface(fontStyle)
,因为fontStyle
尚未初始化。
您不能在sharedprefrence上存储字体,为了便于访问,您可以通过扩展textview类来创建自定义textview,您可以在其中添加字体