首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在原生Android应用程序上使用"Font Awesome“中的图标和符号

如何在原生Android应用程序上使用"Font Awesome“中的图标和符号
EN

Stack Overflow用户
提问于 2013-03-05 04:30:35
回答 10查看 118.1K关注 0票数 154

我正在尝试在我的应用程序上使用Font Awesome,我可以使用Typeface.createFromAsset()集成字体,但我也想使用该字体提供的图标,但到目前为止我还无法做到这一点。

此特定字体包含Unicode专用区域(PUA)中的图标,用于媒体播放器控制、文件系统访问、箭头等。

有没有人在Android上使用过包含图标和符号的字体,这可能吗?

EN

回答 10

Stack Overflow用户

发布于 2013-05-30 02:33:31

也许太晚了,但我也有同样的需求,所以我发布了这个https://github.com/liltof/font-awsome-for-android,它是一个android版的可扩展标记语言版本的字体,非常棒,就像基思·科文说的那样

希望能对其他人有所帮助。

票数 10
EN

Stack Overflow用户

发布于 2015-12-11 21:22:48

如上所述,这是一个很好的例子,效果很好:

代码语言:javascript
复制
Typeface font = Typeface.createFromAsset(getAssets(), "fontawesome-webfont.ttf" );

Button button = (Button)findViewById( R.id.like );
button.setTypeface(font);

但是!>如果按钮内的字符串是从xml设置的,这将起作用:

代码语言:javascript
复制
<string name="icon_heart">&#xf004;</string>
button.setText(getString(R.string.icon_heart));

如果您需要动态添加它,可以使用以下命令:

代码语言:javascript
复制
String iconHeart = "&#xf004;";
String valHexStr = iconHeart.replace("&#x", "").replace(";", "");
long valLong = Long.parseLong(valHexStr,16);
button.setText((char) valLong + "");
票数 9
EN

Stack Overflow用户

发布于 2015-08-02 13:41:47

如果您希望在不向string.xml添加字符串情况下使用编程setText

在这里查看它的十六进制代码:

http://fortawesome.github.io/Font-Awesome/cheatsheet/

将替换为0xf066

代码语言:javascript
复制
 Typeface typeface = Typeface.createFromAsset(getAssets(), "fontawesome-webfont.ttf");
    textView.setTypeface(typeface);
    textView.setText(new String(new char[]{0xf006 }));
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15210548

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档