我在我的项目中添加了自定义字体。它包含在目标中,并添加到 plist 中。当我尝试以编程方式使用它时,它不起作用,并且当我打印出可用字体列表时它也不会显示。但是,它确实显示为 Interface Builder 中的一个选项,如果我在 IB 中将标签文本设置为该字体,它可以正常工作并在我打印出可用字体列表时显示。这是 XCode 6.4 和 iOS 8.0
当它通过 IB 工作时,它会以这样的字体名称打印出来:Special Elite SpecialElite-Regular
我以编程方式调用字体,如: [UIFont fontWithName:@"SpecialElite-Regular" size:fontSize];
使用内置字体执行此操作时没有问题。
\n\n\n当我尝试以编程方式使用它时,它不起作用,并且当我打印出可用字体列表时它不会显示
\n
这证明您实际上没有将其正确包含在目标和Info.plist中。
\n\n它似乎在 IB 中工作的原因是这种字体也存在于您的计算机上。但事实上,如果你要在你的设备上运行这个应用程序,你会发现即使在 IB 中设置字体也不起作用。
\n\n您的字体是Special Elite。如您所见,我在正在运行的应用程序中可以看到它:
\n\n
这是我使用的代码:
\n\n let lab = UILabel()\n lab.text = "This is a test"\n lab.font = UIFont(name:"SpecialElite-Regular", size:18)\n lab.sizeToFit()\n lab.frame.origin = CGPointMake(100,100)\n self.view.addSubview(lab)\nRun Code Online (Sandbox Code Playgroud)\n\n所以你看,如果正确加载,可以在代码 \xe2\x80\x94 中引用该字体。您显然没有正确加载它。它不在您的应用程序包中,或者不在复制构建阶段,或者未在您的Info.plist中正确列出。
\n\n(当然,您总是有可能使用[UIFont fontWithName:size:]错误的名称或大小值进行调用。)
| 归档时间: |
|
| 查看次数: |
1166 次 |
| 最近记录: |