【发布时间】:2017-12-21 20:43:34
【问题描述】:
CATextLayer.font 属性是不透明的CFTypeRef。有没有办法将该引用转换为UIFont?我不介意它是否返回一个可选的 UIFont。
【问题讨论】:
-
根据文档,它是
May be either a CTFont, a CGFont, an instance of NSFont (macOS only), or a string naming the font。那么stackoverflow.com/questions/6714858/…、stackoverflow.com/questions/9205709/… 等等?根据类型,函数等效名称应该在 Swift 中可用。 stackoverflow.com/questions/3471964/…获取类型? -
既然你创建了文本层并配置了它,你怎么会不知道你分配了什么字体呢?
-
简单。这是通用框架的一部分,我在几个地方使用不同字体的文本层。事实上,我下面的答案是需要
get和set的协议实现的修改版本。不做任何假设。