iphone-自定义字体需要额外内存吗?

iphone-自定义字体需要额外内存吗?,iphone,uilabel,custom-font,Iphone,Uilabel,Custom Font,我需要为我的UILabel使用外部自定义字体。我成功地做到了,它正在发挥作用 我的应用程序中总共有50个UILabel。每个UILabel都有与我的应用程序嵌入的相同的自定义字体 所有50个UILabel一次加载到内存中 每个UILabel的文本约为200字节的NSString,所有文本的总和约为1K-2K字节。我以前犯了一个错误,写每个UILabel的文本是1K-2K,对不起 我注意到一件事,如果我将自定义字体应用于UILabel,内存成本非常高,比没有自定义字体的情况多出30-40MB 这可

我需要为我的UILabel使用外部自定义字体。我成功地做到了,它正在发挥作用

我的应用程序中总共有50个UILabel。每个UILabel都有与我的应用程序嵌入的相同的自定义字体

所有50个UILabel一次加载到内存中

每个UILabel的文本约为200字节的NSString,所有文本的总和约为1K-2K字节。我以前犯了一个错误,写每个UILabel的文本是1K-2K,对不起

我注意到一件事,如果我将自定义字体应用于UILabel,内存成本非常高,比没有自定义字体的情况多出30-40MB

这可能吗


我的应用程序非常简单,目前只显示5个页面,每个页面有10个UILabel。因此,没有其他地方或bug会存在,我想如果标签上有1k-2k的文本,我肯定其中50个不能一次全部显示出来。这里采用的方法类似于UITableView的工作方式,因为用户滚动、切换选项卡等,然后只显示用户可见的标签,并卸载其他标签。这将减少内存峰值,您只需要为显示的标签加载自定义字体。

正如Joe所说,在UILabels中显示的文本太多了。但是你首先是如何应用字体的呢?我会发布一些代码来说明你是如何做的,可能是内存问题。我认为没有代码。我只是将自定义字体文件包含到我的项目中,并在info.plist中设置它…那么您的标签在IB中?否则,您将创建
UIFont
对象并将其分配给标签。不,我手动创建标签,而不是从IB创建。是的,您是对的,我有一个全局UIFont(静态)并将该UIFont分配给每个UILabelhi,谢谢。即使我一次只显示10个(内存中有40个其他UILabel但隐藏),仍然无法在内存中保存50个?你的意思是,如果字体是自定义的,每个UILabel都会花费额外的内存?我假设字体只需要加载一次,并在标签之间共享,但我不确定这一点。您可以创建一个带有系统字体和一些标签的裸体项目,并在instruments中进行监视,然后添加自定义字体并查看其变化程度。