gpt4 book ai didi

ios - 自定义字体仅在 Interface Builder 中设置时可用

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:15 25 4
gpt4 key购买 nike

我已将自定义字体添加到我的项目中。它包含在目标中,并添加到 plist 中。当我尝试以编程方式使用它时,它不起作用,并且当我打印出可用字体列表时它也没有出现。但是,它确实在 Interface Builder 中显示为一个选项,如果我在 IB 中将标签的文本设置为该字体,它会正常工作并在我打印出可用字体列表时显示。这是 XCode 6.4 和 iOS 8.0

当它通过 IB 工作时,它会以这样的字体名称打印出来: 特别精英 特殊精英-普通

我以编程方式调用字体,例如:[UIFont fontWithName:@"SpecialElite-Regular"size:fontSize];

使用内置字体执行此操作没有问题。

最佳答案

When I try to use it programmatically it doesn't work, and it doesn't show up when I print out a list of available fonts

这证明您实际上没有将它正确地包含在目标和Info.plist中。

似乎在 IB 中工作的原因是该字体也存在于您的计算机上。但事实上,如果您要在您的设备上运行这个应用程序,您会发现即使在 IB 中设置字体也不起作用。

您的字体是 Special Elite。如您所见,我在运行的应用程序中可以看到它:

enter image description here

这是我使用的代码:

    let lab = UILabel()
lab.text = "This is a test"
lab.font = UIFont(name:"SpecialElite-Regular", size:18)
lab.sizeToFit()
lab.frame.origin = CGPointMake(100,100)
self.view.addSubview(lab)

所以你看,可以在代码中引用这个字体——如果加载正确。您显然没有正确加载它。它不在您的应用程序包中,或者它不在复制构建阶段,或者它没有正确地列在您的 Info.plist 中。

(当然,您调用 [UIFont fontWithName:size:] 的名称或大小值总是有可能错误。)

关于ios - 自定义字体仅在 Interface Builder 中设置时可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31443027/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com