android - 在 NativeScript Angular 中,为什么这些图标没有居中显示?
问题描述
我想在 NativeScript + Angular 应用程序中使用 FontAwesome 字体。
我已按照有关如何包含字体的说明进行操作
我将 FontAwesome.ttf 文件添加到字体目录并添加
.fa {
font-family: "FontAwesome", FontAwesome;
}
到 app.css。
然后我将 fa 样式应用于一个标签,该标签的文本是我想要的图标的代码。我希望图标以圆圈为中心。
我在NativeScript Playground中设置了一个工作示例
任何应用了 'fa' 样式的字符都不会在圆圈中居中。这在 Android 和 iOS 下都会发生。
我做错了什么还是这是一个错误?
我已经尝试过当前版本的 FontAwesome 和包含在 Playground 链接中的旧版本。我也尝试过 Material Design Icons。
我确实注意到这似乎不会发生在基于 Angular 6 的NativeScript + Angular Plugins Showcase 应用程序中,因为我正在使用 Angular 7.1。
解决方案
我认为这可能是字体本身的问题,字体中的矢量带有自己的定位/边距。一种解决方法可能是将circle
类(圆角边缘)应用于标签的父级并设置verticalAlignment
为center
<StackLayout class="circle" verticalAlignment="center">
<Label class="fa" text=""></Label>
</StackLayout>
<StackLayout class="circle" verticalAlignment="center">
<Label class="fa" text="XX"></Label>
</StackLayout>
推荐阅读
- windows - 在文本文件的固定位置插入字符串
- mysql - 在 MySQL 中使用 CTE 更新或删除
- java - int 到 2 个字节的可变长度编码
- arrays - 拆分 CSV 文件问题
- python-3.x - 在抽象基类中实现子类级别变量
- python - 我可以制作一个包含不同字段和注册字段的表单吗?
- java - EL1008E: 在“java.util.ArrayList”类型的对象上找不到属性或字段“内容” - 可能不是公共的或无效的?
- batch-file - 具有不同变量值的批处理循环命令
- c# - Facebook json 消息的编码/解码问题。C# 解析
- python - 在 Python 中查找列表的大小/内部结构