首页 > 解决方案 > FontAwesome UITabBarItem 未正确显示

问题描述

我正在尝试为我的每个视图控制器创建图标,但它正在创建一个问号块,就好像它不理解图像一样

let settings = UINavigationController(rootViewController: SettingsController())
let individual = IndividualAthleteController()

var items: [FontAwesome: UIViewController] = [.slidersH: settings,.user: individual]
for (iconString, viewController) in items {

    let icon = UIImage.fontAwesomeIcon(name: iconString, style: .brands, textColor: .black, size: CGSize(width: 30, height: 30))
    let tabBar = UITabBarItem(title: viewController.title, image: icon, selectedImage: icon)
    items[iconString]!.tabBarItem = tabBar
}
viewControllers = Array(items.values)

它正在为每个 viewController 创建这个图像: 在此处输入图像描述

问题是什么?

标签: swiftfont-awesomeuitabbaruitabbaritem

解决方案


确保将 .ttf 文件导入项目并设置文件的目标。然后,确保您正在更新您的 plist:

  • 只需拖放即可将 .ttf 文件导入您的项目,选中“如果需要则复制”(Es. fontawesome-webfont.ttf)
  • 选择您的 .ttf 文件并在检查器中选择上面类似于工作表的图标,然后在下面的部分(目标成员资格)中选择您的项目作为目标(如果不是)
  • 最后检查您的 plist 并添加键“您的应用程序提供的字体”,并作为 item0(它是一个数组)将您的字体名称作为值(例如 fontawesome-webfont.ttf )

请参阅此链接以查看先前说明的图像

如果您使用这个库Vaberer/Font-Awesome-Swift,请确保您正在执行与上述步骤相同的操作

注意:如果您不使用 Vaberer 库,请给它一个机会


推荐阅读