为了账号安全,请及时绑定邮箱和手机立即绑定

如何获取andorid中所有字体目录的字体名称?

如何获取andorid中所有字体目录的字体名称?

慕沐林林 2023-07-28 17:01:11
我有一个列表,其中包含用户选择的具有不同字体的文本。用户可以从此列表中选择所需的字体。如何以编程方式从字体目录中获取所有字体名称?
查看完整描述

2 回答

?
守候你守候我

TA贡献1802条经验 获得超10个赞

如果你想获取 main->res->font 目录中的所有字体


尝试这样的事情:


科特林


val fontFields = R.font::class.java.fields

val fonts = arrayListOf<Int>()


for (field in fontFields) {

    try {

        Log.i("TAG", field.name)

        fonts.add(field.getInt(null))

    } catch (e: Exception) {

        e.printStackTrace()

    }

}


for(font in fonts){

    val typeface = appContext.resources.getFont(font)

    println(typeface.isBold)

}

爪哇


Field[] fontFields = R.font.class.getFields();

ArrayList<Integer> fonts = new ArrayList<>();


for (Field field : fontFields) {

    try {

        Log.i("TAG", field.getName());

        fonts.add(field.getInt(null));

    } catch (Exception e) {

        e.printStackTrace();

    }

}


for (int font : fonts){

    Typeface typeFace = appContext.getResources().getFont(font);

    Log.i("TAG", String.valueOf(typeFace.isBold()));

}


查看完整回答
反对 回复 2023-07-28
?
湖上湖

TA贡献2003条经验 获得超2个赞

另一种快速方法是检索 Android 系统字体,它们始终位于 system/fonts 中

String path = "/system/fonts";
File file = new File(path);
File ff[] = file.listFiles();


查看完整回答
反对 回复 2023-07-28
  • 2 回答
  • 0 关注
  • 161 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信