Par*_*ram 2 cocoa-touch objective-c static-libraries custom-font ios
我正在创建一个框架("Cocoa Touch Static Library")供其他iOS开发人员使用.现在我将按照此处的步骤在我的框架内使用自定义字体.步骤2在Info.plist文件中设置"UIAppFonts".但是在框架的情况下,Info.plist将由开发人员ie)提供.所以我的框架用户只能在他们的应用程序的plist文件中设置"UIAppFonts"属性,或者有没有办法在Framework中自己设置属性,以便我的框架的每个用户都不需要设置"UIAppFonts"属性?请指教,谢谢.
如您所说,您无法在静态库中设置UIAppFonts.根据您将要使用的内容,您可能不需要它.
作为一种解决方法,您可以在应用程序生命周期的任何时候动态加载字体,例如在静态库中的一些早期调用的init/setup方法中.
请参阅Marco Arment的本教程,代码如下:
NSData *inData = /* your decrypted font-file data */;
CFErrorRef error;
CGDataProviderRef provider = CGDataProviderCreateWithCFData((CFDataRef)inData);
CGFontRef font = CGFontCreateWithDataProvider(provider);
if (! CTFontManagerRegisterGraphicsFont(font, &error)) {
CFStringRef errorDescription = CFErrorCopyDescription(error)
NSLog(@"Failed to load font: %@", errorDescription);
CFRelease(errorDescription);
}
CFRelease(font);
CFRelease(provider);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1468 次 |
| 最近记录: |