是否概述了iOS 7中的文本和字符串绘制系统更改?

时间:2013-10-05 10:38:36

标签: iphone ios ipad nsstring uikit

在iOS 7中,一些最重要的字符串绘制和指标计算方法是depracated,没有给出明显的选择。

enter image description here

NSString UIKit Additions Reference上的页面像血一样红。几乎所有东西都被弃用了。 Xcode向我发出了300条警告。

我试着找出苹果的想法以及他们在UIKit文本系统中的变化,但我会从哪里开始?他们是否提到了为什么所有这些都被弃用以及文本系统现在的工作原理有何不同?以及如何适应?当标签可以缩放字体以适合大小时,如何计算文本边界框? TextKit是解决方案吗?

我在Google上花了3个小时但没有找到有关如何解决此问题的有用信息。

我们应该在这里记录所有替代方案,以便所有遇到这种抑郁贬值混乱的开发人员能够迅速找到安心。

1 个答案:

答案 0 :(得分:1)

如果查看弃用,大多数人都不赞成使用UIFont来使用属性字典。

  

drawInRect:withFont :(在iOS 7.0中不推荐使用。使用drawInRect:withAttributes:代替。)   drawInRect:withFont:lineBreakMode :(在iOS 7.0中不推荐使用。使用drawInRect:withAttributes:代替。)
  sizeWithFont :(在iOS 7.0中不推荐使用。使用sizeWithAttributes:而不是。)   等...

因此,如果您正在寻找可以开始的地方,请了解如何使用属性字典来设置字体。它看起来像很多折旧,但你实际上并不需要学习那么多新东西。

如果您想更新代码以使用新的TextKit系统,请查看WWDC视频和TextKit Programming Guide

如果您想了解苹果公司过多弃用的原因,我猜这与曾经在网络视图上构建UILabelUITextView的方式有关,现在他们建立在TextKit上。