首页 > 解决方案 > SwiftUI 未将自定义字体应用于选项卡式视图

问题描述

我正在尝试在我的选项卡式视图中显示 FontAwesome 图标,但 swift 没有它。

这是我的代码:

        TabView(selection: $selection){
            Text(" \u{f466} First View")
                .tabItem {


                          Text("\u{f466} First Vw")

                }
                .tag(0)
            Text("Second View")
                .tabItem {
                       Text("\u{f466} First View")

                }
                .tag(1)
        }.font(Font.custom("Font Awesome 5 Free", size:18))

它在第一个文本(主标签)中使用自定义字体,但不在选项卡中。

我该如何解决?

谢谢![在此处输入图像描述] 1

标签: iosswiftxcodexcode11

解决方案


不幸的是, FontAwesome不适用于tabItem. 至于原因,至今没找到。如您所见,简单地Text说,它可以工作!

好消息是,有一个解决方法。

使用FontAwesome.swift

pod 'FontAwesome.swift'

Github:https ://github.com/thii/FontAwesome.swift

var body: some View {
        TabView(selection: $selection){
            Text("First View")
                .tabItem {
                    Image(uiImage: UIImage.fontAwesomeIcon(name: .coffee, style: .solid, textColor: .black, size: CGSize(width: 30, height: 30)))
                    Text("First Vw")
            }
            .tag(0)
            Text("\u{f075} Second View")
                .font(Font.custom("FontAwesome5Free-Solid", size:18))
                .tabItem {
                    Text("\u{f075} First View")
            }
            .tag(1)
        }.font(Font.custom("FontAwesome5Free-Solid", size:18))
    }

我们为我们的 制作一个Image对象tabItem,但使用UIImage. 这UIImage将来自 FontAwesome。

在此处输入图像描述


推荐阅读