树莓派遇见Android Things(一):Raspberry Pi 3B安装Android Things
树莓派遇见Android Things(二):编写第一个程序
树莓派遇见Android Things系列教程前两篇已经带着大家在树莓派上烧写了固件,并且编写了hello world程序,有的同学在自己尝试中可能已经发现,Android Things 不!能!显!示!中!文!
别慌,稳住,搬个小板凳做好,吃着瓜子听我慢慢跟你唠。看看怎么解决。
其实很简单,不能显示中文只是因为Android Things目前还没有内置中文字库,我们只需要在app中放入字库,然后全局替换即可
下面撸起袖子开始干
1.首先下载你喜欢的中文字体,.ttf格式;
2.在你的项目里新建assets文件夹,最好是把项目视图切换到Project视图新建,注意assets文件夹与java文件夹同级别,目录结构如下,然后在assets文件夹下新建font文件夹,把字库文件放进去即可。
3.在项目自定义的Application中加载自己的字体,废话少说,看东西
public class MyApp extends Application {
public static Typeface typefaceStHeiTi;
@Override
public void onCreate() {
super.onCreate();
typefaceStHeiTi = Typeface.createFromAsset(getAssets(), "fonts/STHeiti.ttf");
try {
Field field = Typeface.class.getDeclaredField("MONOSPACE");
field.setAccessible(true);
field.set(null, typefaceStHeiTi);
} catch (NoSuchFieldException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
}
这样就替换了系统的 monospace(等宽字体)
4.在style.xml文件中添加样式
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<item name="android:typeface">monospace</item>
</style>
5.在AndroidManifest.xml文件中的<application>节点中引用步骤4中的样式
<application
android:name=".MyApp"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
6.大功告成,在你的代码中加入中文测试一下效果