自定义字体在IOS中不显示(.otf类型)
我下面的San Fransico字体不工作 我已经在.plist中添加了所有otf文件,并使用该名称在代码中使用字体管理器设置字体,如下所示自定义字体在IOS中不显示(.otf类型),ios,objective-c,iphone,xcode,fonts,Ios,Objective C,Iphone,Xcode,Fonts,我下面的San Fransico字体不工作 我已经在.plist中添加了所有otf文件,并使用该名称在代码中使用字体管理器设置字体,如下所示 lbl_1.font = [UIFont fontWithName:@"SFUIDisplay-Bold" size:20]; lbl_2.font = [UIFont fontWithName:@"SFUIDisplay-Medium" size:20]; lbl_3.font = [UIFont fontWithName:@"SFUIText-Lig
lbl_1.font = [UIFont fontWithName:@"SFUIDisplay-Bold" size:20];
lbl_2.font = [UIFont fontWithName:@"SFUIDisplay-Medium" size:20];
lbl_3.font = [UIFont fontWithName:@"SFUIText-Light" size:20];
lbl_4.font = [UIFont fontWithName:@"SFUIText-Regular" size:20];
lbl_5.font = [UIFont fontWithName:@"SFUIText-Semibold" size:20];
注意:我使用Zil-answer下载了.ttf及其工作原理。步骤1:
确保在项目中添加了字体
第二步:
确保在info.plist中添加了字体
第三步:
确保在复制捆绑资源中添加了字体
步骤1:
确保在项目中添加了字体
第二步:
确保在info.plist中添加了字体
第三步:
确保在复制捆绑资源中添加了字体
步骤1:确保已在项目中添加字体文件
第2步:在AppDelegate中运行下面的代码,检查得到的字体名称
for (NSString *familyName in [UIFont familyNames]){
NSLog(@"Family name: %@", familyName);
for (NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) {
NSLog(@"--Font name: %@", fontName);
}
}
可能是字体名称与您使用的不同。步骤1:确保您在project中添加了字体文件
第2步:在AppDelegate中运行下面的代码,检查得到的字体名称
for (NSString *familyName in [UIFont familyNames]){
NSLog(@"Family name: %@", familyName);
for (NSString *fontName in [UIFont fontNamesForFamilyName:familyName]) {
NSLog(@"--Font name: %@", fontName);
}
}
可能字体名称与您使用的不同。字体不起作用有一些常见错误,让我列出所有这些错误,我相信您会发现您的问题:
- 确保您已经在项目中添加了字体,并且可以在XCode中看到它们。您可以将它们放在根文件夹或特定文件夹中
- 确保他们有正确的目标,或者他们确实有目标;)勾选方框,你就好了
请看这张图中的第1点和第2点。
- 确保您的图像包含在当前捆绑包的资源中:
- 确保在.plist文件中引用它们,如果它们在cusotm文件夹中,我非常确定您需要写下相对路径,而不仅仅是名称
- 确保使用了正确的字体名称,可以使用以下代码段找到该名称:
目标C:
for (NSString* family in [UIFont familyNames])
{
NSLog(@"%@", family);
for (NSString* name in [UIFont fontNamesForFamilyName: family])
{
NSLog(@" %@", name);
}
}
斯威夫特:
for family: String in UIFont.familyNames()
{
print("\(family)")
for names: String in UIFont.fontNamesForFamilyName(family)
{
print("== \(names)")
}
}
完成后不要忘记删除该代码。这将帮助您确保确实为字体使用了正确的姓氏,有时会与使用OSX字体查看器看到的实际名称不同
注意:如果你的字体不打印,那意味着它们不在项目中,如果它们打印,那意味着你没有成功加载它们,但它们在项目中。此特定步骤可以帮助您查明问题所在
- 实际使用字体:
UIFont myFont = [UIFont fontWithName:@"QuicksandDash-Regular" size:35];
谢谢你的实际提示
我100%肯定正确答案就在这里,所以确保你这边的一切都是正确的。除非你做了一些具体的反对使用字体的事情,否则重复这些步骤就足够了。
您可以尝试使用一个空项目并比较结果,这通常在遇到“无法解决的问题”时会有所帮助。字体不工作有常见错误,让我列出所有错误,我相信您会发现问题:
- 确保您已经在项目中添加了字体,并且可以在XCode中看到它们。您可以将它们放在根文件夹或特定文件夹中
- 确保他们有正确的目标,或者他们确实有目标;)勾选方框,你就好了
请看这张图中的第1点和第2点。
- 确保您的图像包含在当前捆绑包的资源中:
- 确保在.plist文件中引用它们,如果它们在cusotm文件夹中,我非常确定您需要写下相对路径,而不仅仅是名称
- 确保使用了正确的字体名称,可以使用以下代码段找到该名称:
目标C:
for (NSString* family in [UIFont familyNames])
{
NSLog(@"%@", family);
for (NSString* name in [UIFont fontNamesForFamilyName: family])
{
NSLog(@" %@", name);
}
}
斯威夫特:
for family: String in UIFont.familyNames()
{
print("\(family)")
for names: String in UIFont.fontNamesForFamilyName(family)
{
print("== \(names)")
}
}
完成后不要忘记删除该代码。这将帮助您确保确实为字体使用了正确的姓氏,有时会与使用OSX字体查看器看到的实际名称不同
注意:如果你的字体不打印,那意味着它们不在项目中,如果它们打印,那意味着你没有成功加载它们,但它们在项目中。此特定步骤可以帮助您查明问题所在
- 实际使用字体:
UIFont myFont = [UIFont fontWithName:@"QuicksandDash-Regular" size:35];
谢谢你的实际提示
我100%肯定正确答案就在这里,所以确保你这边的一切都是正确的。除非你做了一些具体的反对使用字体的事情,否则重复这些步骤就足够了。
您可以尝试使用一个空项目并比较结果,这通常在遇到“无法解决的问题”时会有所帮助。您是否在项目中添加了otf文件?我添加了一个相当完整的答案,希望您能在其中找到您需要的:)您是否在项目中添加了otf文件?我添加了一个相当完整的答案,我希望你能在那里找到你需要的:)我还想指出的是,寻找你正在尝试安装的字体的不同版本是值得的。我试图在应用程序中呈现的字体不起作用。我的设计师找到了不同版本(不同的SHA sum)的字体,相同的文件类型(otf),相同的字体样式,并且它工作正常。我还注意到,值得到处寻找您尝试安装的字体的不同版本。我试图在应用程序中呈现的字体不起作用。我的设计师发现了该字体的不同版本(不同的SHA-sum),相同的文件类型(otf),相同的字体样式,并且它工作正常。