【发布时间】:2019-01-05 13:38:19
【问题描述】:
我目前正在开发一个显示特殊 unicode 字符的应用程序(例如 ꁴ)
现在我遇到了在旧设备上无法显示这些符号的问题。 我如何知道它是否在当前设备上运行?
- 是否必须为每个 SDK 版本创建一个虚拟 Android 设备并进行测试?
- 是否可以将当前的 Roboto 字体捆绑到我的 apk 中并将其传送到旧设备以便显示字符?
【问题讨论】:
我目前正在开发一个显示特殊 unicode 字符的应用程序(例如 ꁴ)
现在我遇到了在旧设备上无法显示这些符号的问题。 我如何知道它是否在当前设备上运行?
【问题讨论】:
如果将自定义字体放在 assets 文件夹中并在使用时使用地址,则不会有问题
将您的 Roboto.ttf 放在assets 文件夹中
在 strings.xml 中为每个图标创建了一个条目。例如对于“Yi 音节 Bby”:
<string name="icon_note">ꁴ</string>
在我的 xml 布局视图中引用了上述条目:
<Button
android:id="@+id/like"
style="?android:attr/buttonStyleSmall"
...
android:text="@string/icon_note" />
在我的 onCreate 方法中加载字体并将其设置为适当的视图:
Typeface font = Typeface.createFromAsset( getAssets(), "Roboto.ttf" );
...
Button button = (Button)findViewById( R.id.like );
button.setTypeface(font);
这里可以使用icon lib作为字体检查How to use icons and symbols from "Font Awesome" on Native Android Application
【讨论】: