【发布时间】:2012-05-09 04:09:32
【问题描述】:
好的,所以我一直在阅读 SO 并进行各种谷歌搜索,但我无法弄清楚为什么我的字体不起作用。
我认为我所做的一切都是正确的,但是当我运行应用程序时,我的按钮上的文本以标准系统字体显示,而不是我导入的字体。我添加了NSLog(@"%@",[UIFont familyNames]); 以查看它是否在列表中,但它不在。这让我觉得我设置错了。
我希望有人可以帮助我以自定义字体显示标签中的文本。 感谢任何认为他们可能有任何建议的人!
这就是我所做的一步一步。
第 1 步:我从互联网上下载了 .ttf 文件。在我的取景器中,它看起来像:
第 2 步:我将字体文件从 finder 拖到 XCode 中,并选中“将文件复制到项目文件夹”选项。所以在我的项目中我可以看到:
第 3 步: 我打开字体册中的字体以查看真正的文件名是什么,然后我看到了:
第 4 步:我在 MyApp-Info.plist 文件中添加了一个密钥,其文件名来自 XCode,包括文件类型。它看起来像这样:
第 5 步:然后在我的代码中写下:
UIButton *thisLevelButton = [UIButton buttonWithType:UIButtonTypeCustom];
[thisLevelButton setBackgroundImage:[UIImage imageNamed:@"ccLSButtonPlayed"] forState:UIControlStateNormal];
thisLevelButton.frame = CGRectMake(x, y, BUTTON_WIDTH, BUTTON_HEIGHT);
thisLevelButton.tag = j;
[thisLevelButton addTarget:self action:@selector(userSelectedButton:) forControlEvents:UIControlEventTouchUpInside];
[thisLevelButton.titleLabel setFont:[UIFont fontWithName:@"PressStartK" size:24]];
[thisLevelButton setTitle:[NSString stringWithFormat:@"%i",(j+1)] forState:UIControlStateNormal];
// add the button to the panel
[subScroll addSubview:thisLevelButton];
作为参考,这是字体系列列表中打印的内容:
(
Thonburi,
"Snell Roundhand",
"Academy Engraved LET",
"Marker Felt",
"Geeza Pro",
"Arial Rounded MT Bold",
"Trebuchet MS",
Arial,
Marion,
"Gurmukhi MN",
"Malayalam Sangam MN",
"Bradley Hand",
"Kannada Sangam MN",
"Bodoni 72 Oldstyle",
Cochin,
"Sinhala Sangam MN",
"Hiragino Kaku Gothic ProN",
Papyrus,
Verdana,
"Zapf Dingbats",
Courier,
"Hoefler Text",
"Euphemia UCAS",
Helvetica,
"Hiragino Mincho ProN",
"Bodoni Ornaments",
"Apple Color Emoji",
Optima,
"Gujarati Sangam MN",
"Devanagari Sangam MN",
"Times New Roman",
Kailasa,
"Telugu Sangam MN",
"Heiti SC",
"Apple SD Gothic Neo",
Futura,
"Bodoni 72",
Baskerville,
"Chalkboard SE",
"Heiti TC",
Copperplate,
"Party LET",
"American Typewriter",
"Bangla Sangam MN",
Noteworthy,
Zapfino,
"Tamil Sangam MN",
"DB LCD Temp",
"Arial Hebrew",
Chalkduster,
Georgia,
"Helvetica Neue",
"Gill Sans",
Palatino,
"Courier New",
"Oriya Sangam MN",
Didot,
"Bodoni 72 Smallcaps"
)
【问题讨论】:
-
感谢您的提问!!我按照说明假设这是对相关问题的回答,是的!我的问题现在已经解决了,这不是英文字体,而是波斯字体。两年多来我一直在拔头发,即使使用自定义 API 等也永远找不到合适的解决方案。但显然苹果这次很热衷,让我们使用自定义字体,只需将密钥添加到信息中即可。列表。再次感谢!
标签: iphone ios xcode fonts label