更改 String / ListPreference 的字体 Android

Change font of String / ListPreference Android

我有一个用于 select 字体的 ListPreference。在ListPreference中,我想更改不同字体名称的字体。我的问题与此有关 - I want to change font of string without using textview in android 但这对我不起作用。
例如(参考下图) - 第 2 个位置是 "Monospace"。我想把它的字体改成Monospace.



我用于条目的代码是 -

String a = "Default";
String b = "Monospace";
String c = "Unique";
String d = "Architect\'s Daughter";
String e = "Dancing Script";
CharSequence[] cs = {a, b, c, d, e};
ListPreference listPref = (ListPreference) findPreference("font");
listPref.setEntries(cs);

有什么方法可以在 ListPreference 上显示字体本身?
感谢您的帮助。

您需要扩展 ListPreference class,并覆盖方法 onCreateDialogView(),您可以在其中使用 listview 和自定义 adapter 创建自己的对话框,它将处理每行的字体。这是创建自定义首选项视图的example