我是客观的新手。我正在使用阿姆哈拉语的键盘。但是我面临一些问题,iOS不会支持阿姆哈拉语。当我将这些阿姆哈拉语字符(ወርትብቹኢኦፕ)分配给我的标签标题或按钮标题时,它就变成了方框。我不知道如何解决这个问题。请帮助我。
答案 0 :(得分:2)
从other question和类似的,最佳解决方案是:
您无法从那里添加自定义字体,而是必须创建IBOutlet并以编程方式添加字体
所以: 1)将ttf字体文件拖放到资源文件夹中 并添加info.plist:
<key>UIAppFonts</key>
<array>
<string>AmharicFontFile.ttf</string>
</array>
或点击Xcode:
I)在plist文件中(projectView,点击info.plist)
II)创建一个名为“由应用程序提供的字体”的新行
III)而不是创建新项目,即:
item0 | AmharicFontFile.ttf
比代码:
UIFont *font = [UIFont fontWithName:@"Amharic" size:20];
[label setFont:font];
其中“Amharic”是字体名称(不只是没有扩展名的文件名,但可以是相同的)
答案 1 :(得分:0)
Xcode默认按钮标签为系统字体。如果您的系统字体不支持语言X中的字形,则需要将按钮的字体设置为字体。
如果没有内置字体支持X语言,那么您需要许可一种字体,并将其包含在您的软件包中。
答案 2 :(得分:0)
我的猜测是MacOS支持这种语言,但iOS不支持。如果当前字体(例如系统字体)没有特定字符,则它会查找具有所需字符的“后备”字体。如果iOS没有这种语言的本地化,那么Apple很可能会省去这种语言的字体以节省空间。
我认为文本在Interface Builder和模拟器中看起来没问题,但在设备(1)上没有?或者它只在TextEdit中看起来正确,并且IB和模拟器都没有正确显示它们(2)?在任何一种情况下,您可能都必须许可并安装包含所需字符的自定义字体,并将其包含在您的应用中。
1)模拟器和IB都是真正假装是iOS的Mac应用程序,因此行为与真正的iOS设备不同。因此可能是他们可以访问Mac上的所有字体,而在设备上实际上字体更少。
2)然而,模拟器和IB做了一些努力来模拟一个真正的iOS设备,所以如果它在那里也不起作用,但在像TextEdit这样的真实Mac应用程序中工作,有人是额外的智能并过滤字体列表