我已经阅读了不同的解决方案,但似乎没有任何效果.此代码创建一个零异常:
[NSFontAttributeName: UIFont(name: "Raleway-SemiBold",size: 16)!]
我正确安装了字体,它们在应用程序中正确显示(目标已设置).
我试图在plist中添加应用程序提供的字体,但什么都没发生.我无法编辑数组中的项目:(它们是item0:string:Raleway-SemiBold.tff).
所以基本上我被卡住了……有时Swift和Apple环境对于程序员来说是很好的,有时候(大多数时候),他们太缺陷了,需要这么多的解决方法来达到预期的结果.
非常感谢您的帮助.
解决方法
你得到一个例外,因为UIFont(名字:“Raleway-SemiBold”,大小:16)返回nil,你用力展开它!
相反,使用条件展开:
if let font = UIFont(name: "Raleway-SemiBold",size: 16) { let attributes = [NSFontAttributeName: font] // do something with attributes } else { // The font "Raleway-SemiBold" is not found }
您可以使用UIFont的familyNames()和fontNamesForFamilyName(_ :)方法来获取所需的确切字符串.
斯威夫特4
if let font = UIFont(name: "Raleway-SemiBold",size: 16) { let attributes = [NSAttributedStringKey.font: font] // do something with attributes } else { // The font "Raleway-SemiBold" is not found }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。