如何在SharedPreferences中存储Typeface?

问题描述 投票:0回答:2

我想在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();

错误是这样的:

无法制作字体

android sharedpreferences android-typeface
2个回答
0
投票

fontStyle可能是你的null中的SettingsABC.getTypeface(fontStyle),因为fontStyle尚未初始化。


0
投票

您不能在sharedprefrence上存储字体,为了便于访问,您可以通过扩展textview类来创建自定义textview,您可以在其中添加字体

© www.soinside.com 2019 - 2024. All rights reserved.